RFR: JDK-8164402 key word 'requires' appearing in comment causing a build failure

Erik Joelsson erik.joelsson at oracle.com
Fri Aug 19 07:42:33 UTC 2016


Hello,

It is indeed crude, but the alternative is to have the bootstrap make 
process compile a java program that parses the files. We used to have 
that before when the dependency information was in modules.xml, and it 
confused people when things went wrong. It also makes the build appear 
quite slow/unresponsive at times since this compilation has to happen so 
early in the bootstrap of the build. Both solutions have drawbacks but I 
believe the current solution is the lesser evil.

To clarify, the makefile parses all the module-info.java files to figure 
out which modules are present and the dependencies between them. This 
information is then used to generate all the module specific make 
targets that make up the build.

/Erik

On 2016-08-19 09:26, David Holmes wrote:
> Hi Tim,
>
> Fix seems reasonable but this seems a rather crude way to determine 
> dependencies.
>
> Thanks,
> David
>
> On 19/08/2016 4:05 PM, Tim Bell wrote:
>> Hello
>>
>> Earlier today a javadoc change surprised us by causing JDK 9 builds to
>> fail on all platforms, due to a modules 'requires' statement error.
>>
>> The fix is to have make/common/Modules.gmk be more selective when
>> processing 'requires', so that comment lines are filtered out.
>>
>> Here is the bug report:
>> https://bugs.openjdk.java.net/browse/JDK-8164402
>>
>> And the webrev:
>> http://cr.openjdk.java.net/~tbell/8164402/webrev/
>>
>> Thanks in advance-
>>
>> Tim




More information about the build-dev mailing list