How to share versions information in multiple independent projects

What is the best way to share the version information in projects which are not dependent on each other?
As a concrete example.
The Hortonworks Hadoop platform version is 3.1.5 in which all applications run.

Needs Hive and Hadoop dependencies

Needs only Hive dependency

Currently, we declare all dependency versions in both projects separately. It makes difficult to update all of them when there is an upgrade. What is the best way to centralize the dependency versions in the Gradle world?

In sbt we have the concept of plugins where we declare all and applications apply the plugin.
I read about concept of platforms in Gradle, it looks similar. But How to create own platforms? and does it provides flexibility to apps to use only part of the platform?

Hi @wqpUuqZPxgOn,

The current recommendation is to define the versions as dependency constraints in a separate java-platform project: