Details
-
Improvement
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
Description
We have a support for different Java versions in the parent pom,
controlled by the sling.java.version property. This property can be
overridden by child modules.
As the parent pom evolves, we sometimes change the sling.java.version,
I observed at least:
- parent pom 26: Java 6
- parent pom 32: Java 7
- parent pom 35: Java 8
- parent pom 50: Java 11
I think it's completely fine to evolve and require new java versions
where it makes sense. At the same time, when upgrading the parent pom
it's not obvious that this sometimes comes in with a Java version
requirement change.
Upgrading the required Java version should (IMO) come with a minor
version bump to indicate the more strict requirements. Historically,
that has been hard to implement because the upgraded requirements
coming with the parent pom are largely invisible.
We agreed that it makes sense to remove the default
version for sling.java.version from the parent pom and then requiring
each module to set it. This will be a one-time, one-line change for
modules that require it but will make the requirement explicit.
Also discussed at https://lists.apache.org/thread/dtv19dd9dyt3h86hhywt1h83mh4ywrtc
Attachments
Issue Links
- links to