Compact profiles broken?

Jonathan Gibbons jonathan.gibbons at oracle.com
Mon May 23 16:59:11 UTC 2016


On 05/22/2016 12:47 PM, Alan Bateman wrote:
> On 21/05/2016 11:15, Uwe Schindler wrote:
>> :
>>
>> My proposal would be: If you start javac with "-source 1.8 -target 
>> 1.8" and don't pass a bootclasspath, it should switch to "-release 8" 
>> for convenience. What do you think? Alternatively allow source and 
>> target when passing release if it's not incompatible.
>>
> I'd prefer to defer to Jan/Jon on this as they have a statement in JEP 
> 247 to say that -release is incompatible with these options. In any 
> case, it does feel like the tools needs to take -release into account. 
> If -release is specified then Gradle shouldn't be added 
> -source/-target. This may be a timing thing as JDK 9 is still in 
> development and it always takes time for the tools to catch up.
>
> -Alan.

I think it would be reasonable to relax the restrictions on -source 
-target if they match the value for -release.  The main goal here is to 
avoid having to resolve conflicts, but if there's no conflict, there's 
no problem.

I think that allowing the older form of numbers (1.8, 1.7, etc) for 
older releases is OK too, in which case the check between -source and 
-release should (probably) be on the normalized numbers, i.e. although 
perverse, the intent of -source 1.7 -release 7 is clear.

-- Jon


More information about the jigsaw-dev mailing list