Compact profiles broken?

Jan Lahoda jan.lahoda at oracle.com
Thu May 19 10:33:39 UTC 2016


This appears to be a bug in the current profiles handling in javac - 
currently (without "-release X"), javac uses "ct.properties" to 
determine the profile of a class. This file contains mapping from 
package to extra metadata, esp. profile. And this file does not contain 
mapping for javax.crypto, so javac thinks it belongs to the default profile.

I guess this is because ct.properties only contains mapping for packages 
from rt.jar, and javax.crypto was not part of rt.jar (was in jce.jar).

It would be relatively easy to use modules to detect profiles, but there 
is a problem with "-source 8 -profile compactX", as with -source 8, 
javac does not keep information about modules, and so cannot do 
module-based checks. So I guess we may need to regenerate ct.properties.

Jan

On 19.5.2016 09:10, Uwe Schindler wrote:
> Hi Alan,
>
> Interestingly, compiling large amounts of code with the Java SE8 option for "compact1" or "compact3" works successfully. It is just this class/package failing. How can that be? The issue is not visible to the outside (requires login).
>
> Uwe
>
> -----
> Uwe Schindler
> uschindler at apache.org
> ASF Member, Apache Lucene PMC / Committer
> Bremen, Germany
> http://lucene.apache.org/
>
>> -----Original Message-----
>> From: jigsaw-dev [mailto:jigsaw-dev-bounces at openjdk.java.net] On Behalf
>> Of Alan Bateman
>> Sent: Thursday, May 19, 2016 8:55 AM
>> To: Ryan Ernst <ryan at iernst.net>; jigsaw-dev at openjdk.java.net
>> Subject: Re: Compact profiles broken?
>>
>> On 19/05/2016 06:49, Alan Bateman wrote:
>>> :
>>>
>>> In the mean-time then this should work:
>>>
>>>    java -release 8 -profile compact3 ...
>>>
>>> or specify -limitmods, as in:
>>>
>>>    java -limitmods java.compact3 ...
>>>
>> Oops, I meant `javac` here of course (not `java`).
>>
>> -Alan
>


More information about the jigsaw-dev mailing list