You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Robert Scholte (JIRA)" <ji...@apache.org> on 2017/01/11 14:48:58 UTC

[jira] [Created] (MCOMPILER-285) Support test-compile for JDK 9 build b148+

Robert Scholte created MCOMPILER-285:
----------------------------------------

             Summary: Support test-compile for JDK 9 build b148+
                 Key: MCOMPILER-285
                 URL: https://issues.apache.org/jira/browse/MCOMPILER-285
             Project: Maven Compiler Plugin
          Issue Type: Bug
    Affects Versions: 3.6.0
            Reporter: Robert Scholte
            Assignee: Robert Scholte
             Fix For: 3.6.1


{quote}
JDK 9 build b148 includes an important Refresh of the module system.

This refresh includes a disruptive change that is important to understand. 

For those that have been trying out modules with regular JDK 9 builds then be aware that `requires public` changes to `requires transitive`. In addition, the binary representation of the module declaration (module-info.class) has changed so that you need to recompile any modules that were compiled with previous JDK 9 builds.
{quote}

To be able to compile the test sources, you must specify the module name (i.e {{-Xmodule:the.module.name}}). This information is already available in {{src/main/java/module-info.java}}, so no need to ask for it again. Due to the change of the binary representation the original trick wiith ASM-6.0_ALPHA doesn't work anymore.
We're going to add a second parser based on QDox, which doesn't parse the class file but the source file. This way we have to options to extract the module name.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)