Details

    • Type: Bug
    • Status: Closed
    • Priority: Blocker
    • Resolution: Fixed
    • Affects Version/s: 3.6.2
    • Fix Version/s: 3.7.0
    • Labels:
      None

      Description

      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.buildProject(LifecycleModuleBuilder.java:117)
          at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81)
          at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.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.executeMojo(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.execute(AbstractCompilerMojo.java:751)
          at org.apache.maven.plugin.compiler.TestCompilerMojo.execute(TestCompilerMojo.java:172)
          at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(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.

        Activity

        Hide
        khmarbaise Karl Heinz Marbaise added a comment -

        The needed fix for this issue is simply to upgrade the dependency:

           <dependency>
               <groupId>org.ow2.asm</groupId>
               <artifactId>asm</artifactId>
              <version>6.0_BETA</version>
             </dependency>
        

        and uncomment the code in AsmModuleInfoParser:

            @Override
            public JavaModuleDescriptor getModuleDescriptor( File modulePath )
                throws IOException
            {
                final JavaModuleDescriptorWrapper wrapper = new JavaModuleDescriptorWrapper();
        
                InputStream in = getModuleInfoClass( modulePath );
        
                if ( in != null )
                {
                    ClassReader reader = new ClassReader( in );
                    reader.accept( new ClassVisitor( Opcodes.ASM6 )
                    {
                        @Override
                        public ModuleVisitor visitModule( String name, int arg1, String arg2 )
                        {
                            wrapper.builder = JavaModuleDescriptor.newModule( name );
        
                            return new ModuleVisitor( Opcodes.ASM6 )
                            {
                                @Override
                                public void visitRequire( String module, int access, String version )
                                {
                                    wrapper.builder.requires( module );
                                }
                            };
                        }
                    }, 0 );
        
                    in.close();
                }
                else
                {
                    wrapper.builder = JavaModuleDescriptor.newAutomaticModule( null );
                }
        
                return wrapper.builder.build();
            }
        
        Show
        khmarbaise Karl Heinz Marbaise added a comment - The needed fix for this issue is simply to upgrade the dependency: <dependency> <groupId> org.ow2.asm </groupId> <artifactId> asm </artifactId> <version> 6.0_BETA </version> </dependency> and uncomment the code in AsmModuleInfoParser: @Override public JavaModuleDescriptor getModuleDescriptor( File modulePath ) throws IOException { final JavaModuleDescriptorWrapper wrapper = new JavaModuleDescriptorWrapper(); InputStream in = getModuleInfoClass( modulePath ); if ( in != null ) { ClassReader reader = new ClassReader( in ); reader.accept( new ClassVisitor( Opcodes.ASM6 ) { @Override public ModuleVisitor visitModule( String name, int arg1, String arg2 ) { wrapper.builder = JavaModuleDescriptor.newModule( name ); return new ModuleVisitor( Opcodes.ASM6 ) { @Override public void visitRequire( String module, int access, String version ) { wrapper.builder.requires( module ); } }; } }, 0 ); in.close(); } else { wrapper.builder = JavaModuleDescriptor.newAutomaticModule( null ); } return wrapper.builder.build(); }
        Hide
        khmarbaise Karl Heinz Marbaise added a comment -

        Fixed by r1804872

        Show
        khmarbaise Karl Heinz Marbaise added a comment - Fixed by r1804872
        Hide
        hudson Hudson added a comment -

        SUCCESS: Integrated in Jenkins build maven-plugins #9058 (See https://builds.apache.org/job/maven-plugins/9058/)
        MCOMPILER-303 Failure of a build with JDK 9
        o Upgraded org.ow2.asm:asm:6.0_ALPHA to 6.0_BETA
        o Activated outcommented code in AsmModuleInfoParser. (khmarbaise: http://svn.apache.org/viewvc/?view=rev&rev=1804872)

        • (edit) maven-compiler-plugin/pom.xml
        • (edit) maven-compiler-plugin/src/main/java/org/apache/maven/plugin/compiler/module/AsmModuleInfoParser.java
        Show
        hudson Hudson added a comment - SUCCESS: Integrated in Jenkins build maven-plugins #9058 (See https://builds.apache.org/job/maven-plugins/9058/ ) MCOMPILER-303  Failure of a build with JDK 9 o Upgraded org.ow2.asm:asm:6.0_ALPHA to 6.0_BETA o Activated outcommented code in AsmModuleInfoParser. (khmarbaise: http://svn.apache.org/viewvc/?view=rev&rev=1804872 ) (edit) maven-compiler-plugin/pom.xml (edit) maven-compiler-plugin/src/main/java/org/apache/maven/plugin/compiler/module/AsmModuleInfoParser.java

          People

          • Assignee:
            khmarbaise Karl Heinz Marbaise
            Reporter:
            khmarbaise Karl Heinz Marbaise
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development