JDK 12: RC feedback
joe.darcy at oracle.com
Tue Feb 19 17:22:33 UTC 2019
On 2/19/2019 9:03 AM, Andrew Guibert wrote:
> Hi all,
> I am kicking the tires on the JDK 12 release candidate build, and I noticed two major pain points:
> 1) javac source/target 6 option is no longer supported
> Looking through the release notes  I see no mention of this change. Is it part of some more generic policy that javac will only go back N-5 versions? Dropping source/target 6 specifically is not my primary concern, rather a more general concern of the cadence of the min compliance dropoff (JDK 9 dropped source/target 5 iirc). If this is the case I worry that by JDK 14 (about a year from now), we will no longer be able to compile down to source/target 8, which will still be a very popular runtime version in 1 years time (and still a supported version).
There is a JEP giving a policy for retiring the -source/-target (and now
JEP 182: Policy for Retiring javac -source and -target Options
As noted in a comment on the issue, the policy has not be fully updated
for the new release model:
"Note that with the six month release cadence
being used starting with JDK 10, the chronical range covered by "one
plus three back" would be much shortened. In due course, this policy
will be updated accordingly, possibly taking into account LTS (long term
support) releases and possibly offering a sparse set of values. For
example, one possible policy would be to support the last two LTS
release and each release after the most recent LTS, but not the releases
between those two LTS releases. "
The possibility of removing -source/-target 6 from JDK 11 was discussed
on this alias in May 2018:
In response to community feedback, the removal was deferred from JDK 11
and implemented in JDK 12.
> 2) The java.class.version has increased (again)
The plan is to increase the class file version with each release. The
class file version acts as an implicit way to denote the minimum JDK a
jar file depends on.
More information about the jdk-dev