-Xdoclint unrecognized in JDK16 due to new module

Jonathan Gibbons jonathan.gibbons at oracle.com
Tue Dec 15 22:19:56 UTC 2020


On 12/15/20 12:26 AM, Alan Bateman wrote:
> On 14/12/2020 20:05, Benjamin Marwell wrote:
>> Hello all,
>>
>> it caught my attention that doclint functionality was moved to the
>> jdk.javadoc module [1].
>>
>> Now, when calling ToolProvider.getSystemJavaCompiler().getTask(…), the
>> presence of the option '-Xdoclint:-missing' and similar options will 
>> throw
>> this exception [2]:
>>     java.lang.IllegalArgumentException: error: invalid flag:
>> -Xdoclint:-missing.
>>
>> This call is being used in Apache Maven, and the Apache Zookeper project
>> already suffers from this issue and reported it upstream [3].
>>
>> Adding the modules to the maven script 'mvn' did not help. But when 
>> calling
>> javac as an external tool (i.e. not via ToolProvider in the same 
>> process),
>> the options are being recognized.
>>
>> I wonder how the doclint options can be made available to
>> the ToolProvider.getSystemJavaCompiler().getTask(…) call again.
>> Maven itself (and in this case: the compiler plugin) is, as you know, a
>> non-modular project.
> I think the Plexus Classworlds launcher sets a funky TCCL that impacts 
> the ServiceLoader lookup of DocLint providers. Can the ServiceLoader 
> usage in DocLint be changed to use the system class loader rather than 
> the TCCL to see if that "fixes it"?
>
> -Alan.


Filed as https://bugs.openjdk.java.net/browse/JDK-8258443

-- Jon



More information about the jigsaw-dev mailing list