Proposed implementation of JEP 182 in JDK 11: drop javac support for -source/-target/--release 6 (original) (raw)

joe darcy joe.darcy at oracle.com
Thu May 10 17:56:03 UTC 2018


Hello,

As background, JEP 182 "Policy for Retiring javac -source and -target Options" (http://openjdk.java.net/jeps/182) puts forth a "one plus three back" policy for the supported range of -source and -target arguments to javac. (As of JDK 9, a matching range of arguments is supported for the --release option.)

This policy was formulated under the old release model before the six month release cadence.

Under this policy, support for the 5/1.5 argument was removed in JDK 9. JDK 10 added support for a 10 argument and retained all the older values that were supported under JDK 9.

JDK 6 first shipped at the end of 2006, which will be nearly 12 years before the planned JDK 11 GA date. JDK 7 first shipped in 2011.

Given the age of JDK 6, I think it is reasonable in 2018 for JDK 11 to drop support for -source/-target/--release 1.6/6, leaving support for 7, 8, 9, 10, and 11. This provides support for four rather than three older versions in JDK 11, but better matches the time span of releases discussed in the JEP.

Future code reviews of the implementation of this removal and related work

    JDK-8028563: Remove javac support for 6/1.6 source and target values     JDK-8173606: Deprecate constructors of 7-era visitors

would take place on compiler-dev.

Comments?

Cheers,

-Joe



More information about the jdk-dev mailing list