So 'lib-1' is some old stuff. 'lib-2' is newer and uses 'lib-1', wants to supersede guava 26.0 with 27.0. And the 'app-1' wants to use 'lib-2', but also use some features from guava 28.0.
How would I go about converting to gradle.properties so that the right versions are used in all projects. Every time I set up a composite build I start having problems with gradle complaining that "some lib/plugin is already added and should not have its version listed in the build."
One of the most salient features of our Tech Hiring culture is that there is so much bullshit. Everyone knows this. Each of us contributes his share. But we tend to take the situation for granted.
Suppose I have a flat folder structure with two support libraries
So 'lib-1' is some old stuff. 'lib-2' is newer and uses 'lib-1', wants to supersede guava 26.0 with 27.0. And the 'app-1' wants to use 'lib-2', but also use some features from guava 28.0.
How would I go about converting to gradle.properties so that the right versions are used in all projects. Every time I set up a composite build I start having problems with gradle complaining that "some lib/plugin is already added and should not have its version listed in the build."
That works, my own project has exactly the same structure.
You have to update Gradle because there is no good way to setup plugin versions before 5.6
$ ./gradlew wrapper --gradle-version 5.6.2
There is a boilerplate
resolutionStrategy
that you have to copy/paste insettings.gradle.kts
Read the docs here github.com/jmfayard/buildSrcVersio...
Thanks! Didn't notice first that you used issue tracker as a wiki :)