Proposed implementation of JEP 182 in JDK 11: drop javac support for -source/-target/--release 6
Joseph D. Darcy
joe.darcy at oracle.com
Tue May 15 23:51:19 UTC 2018
Based on the feedback on this thread and elsewhere, I've targeted
JDK-8028563: Remove javac support for 6/1.6 source and target values
JDK-8173606: Deprecate constructors of 7-era visitors
to JDK 12.
On 5/10/2018 10:56 AM, joe darcy wrote:
> 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
> 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.
More information about the jdk-dev