Hi Robert,

Plexus Languages looks very promising and really needed component. May I
ask you something to clarify if I understand correctly it's purpose. The
intention is Plexus Languages to contain abstractions that represent the
code that is going to be build and not the JDK/JRE used to run Maven, right?

Regards,
Plamen Totev


On Sun, Aug 13, 2017 at 12:12 AM, Karl Heinz Marbaise <khmarba...@gmx.de>
wrote:

> Hi Robert,
>
> I've made a separate issue MCOMPILER-304 to introduce plexus-language
> component.
>
> Kind regards
> Karl Heinz Marbaise
>
> On 12/08/17 19:23, Robert Scholte wrote:
>
>> Hi,
>>
>> short answer: to be able to compile Java 9 projects, you must use the JRE
>> from Maven (i.e. JAVA_HOME must point to JDK 9).
>>
>> The long story: asm-6.0_ALPHA is based on an old format of the
>> module-info file. Only a few weeks ago asm-6.0_BETA was released. There was
>> over a year between these 2 versions and I think is was relatively soon
>> after ALPHA that the format was changed.
>> The first solution I had implemented was using QDox during also during
>> test to read the module-info.java, which is not correct. Test should be
>> using the compiled version, i.e. module-info.class.
>> So I implemented a reflection-based implementation and replaced it for
>> QDox. This implementation uses reflection to access the module-descriptor.
>> But this means that Maven must be running with Java 9. Toolchain doesn't
>> help here.
>>
>> Right now I have the code ready to replace this. I also have started a
>> new project called plexus-languages[1], which has plexus-java. This
>> contains JRE/JDK related code which is used my multiple plugins / libraries.
>> Most important: this code is NOT related to Maven!
>>
>> One of the most important features: based on a JavaModuleDescriptor and a
>> set of jars + output directories and can make an accurate separation for
>> modulepath and classpath. Any feedback is appreciated.
>>
>> thanks,
>> Robert
>>
>> [1] https://github.com/codehaus-plexus/plexus-languages
>>
>>
>> On Sat, 12 Aug 2017 17:44:03 +0200, Karl Heinz Marbaise <
>> khmarba...@gmx.de> wrote:
>>
>> Hi,
>>>
>>> currently I'm facing the following issue with JDK9+181: (using
>>> maven-compiler-plugin:3.6.2):
>>>
>>> [DEBUG] CompilerReuseStrategy: reuseCreated
>>> [DEBUG] useIncrementalCompilation enabled
>>> [ERROR] Failed to parse module-info:
>>> [ERROR] With reflect: null
>>> [ERROR] With asm: null
>>>
>>> [ERROR] Failed to execute goal org.apache.maven.plugins:maven
>>> -compiler-plugin:3.6.2:testCompile (default-testCompile) on project
>>> devday-workshop-service: Execution default-testCompile of goal
>>> org.apache.maven.plugins:maven-compiler-plugin:3.6.2:testCompile
>>> failed: Failed to parse module-info -> [Help 1]
>>> org.apache.maven.lifecycle.LifecycleExecutionException: Failed to
>>> execute goal org.apache.maven.plugins:maven
>>> -compiler-plugin:3.6.2:testCompile (default-testCompile) on project
>>> devday-workshop-service: Execution default-testCompile of goal
>>> org.apache.maven.plugins:maven-compiler-plugin:3.6.2:testCompile
>>> failed: Failed to parse module-info
>>>     at 
>>> org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:213)
>>>
>>>     at 
>>> org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:154)
>>>
>>>     at 
>>> org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:146)
>>>
>>>     at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.b
>>> uildProject(LifecycleModuleBuilder.java:117)
>>>     at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.b
>>> uildProject(LifecycleModuleBuilder.java:81)
>>>     at org.apache.maven.lifecycle.internal.builder.singlethreaded.S
>>> ingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
>>>     at 
>>> org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
>>>
>>>     at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:309)
>>>     at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:194)
>>>     at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:107)
>>>     at org.apache.maven.cli.MavenCli.execute(MavenCli.java:993)
>>>     at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:345)
>>>     at org.apache.maven.cli.MavenCli.main(MavenCli.java:191)
>>>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>     at 
>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>>>
>>>     at 
>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>>
>>>     at java.lang.reflect.Method.invoke(Method.java:606)
>>>     at 
>>> org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
>>>
>>>     at 
>>> org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
>>>
>>>     at 
>>> org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
>>>
>>>     at org.codehaus.plexus.classworlds.launcher.Launcher.main(
>>> Launcher.java:356)
>>> Caused by: org.apache.maven.plugin.PluginExecutionException: Execution
>>> default-testCompile of goal org.apache.maven.plugins:maven
>>> -compiler-plugin:3.6.2:testCompile failed: Failed to parse module-info
>>>     at org.apache.maven.plugin.DefaultBuildPluginManager.executeMoj
>>> o(DefaultBuildPluginManager.java:145)
>>>     at 
>>> org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
>>>
>>>     ... 20 more
>>> Caused by: java.lang.RuntimeException: Failed to parse module-info
>>>     at 
>>> org.apache.maven.plugin.compiler.TestCompilerMojo.getModuleName(TestCompilerMojo.java:328)
>>>
>>>     at 
>>> org.apache.maven.plugin.compiler.TestCompilerMojo.preparePaths(TestCompilerMojo.java:265)
>>>
>>>     at org.apache.maven.plugin.compiler.AbstractCompilerMojo.execut
>>> e(AbstractCompilerMojo.java:751)
>>>     at 
>>> org.apache.maven.plugin.compiler.TestCompilerMojo.execute(TestCompilerMojo.java:172)
>>>
>>>     at org.apache.maven.plugin.DefaultBuildPluginManager.executeMoj
>>> o(DefaultBuildPluginManager.java:134)
>>>     ... 21 more
>>>
>>> Currently testing the project: https://github.com/khmarbaise/
>>> java9-modules-maven-junit-example which I have adopted just to see how
>>> it works with Maven using modules etc.
>>>
>>> Working on the jdk9-fixing branch...which produces the above error ?
>>>
>>> Any Idea?
>>>
>>>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
> For additional commands, e-mail: dev-h...@maven.apache.org
>
>

Reply via email to