[jira] [Created] (SUREFIRE-1679) Caching of provider classpath with module-specific changes may break testing bootstrapping in subsequent modules
Andy Wilkinson created SUREFIRE-1679: Summary: Caching of provider classpath with module-specific changes may break testing bootstrapping in subsequent modules Key: SUREFIRE-1679 URL: https://issues.apache.org/jira/browse/SUREFIRE-1679 Project: Maven Surefire Issue Type: Bug Components: Maven Surefire Plugin Affects Versions: 3.0.0-M3, 2.22.2 Reporter: Andy Wilkinson Attachments: surefire-pollution-problem.zip I believe I've identified a bug in the caching that's performed by {{AbstractSurefireMojo}}. The problem that I am seeing is a failure to bootstrap Surefire: {noformat} [ERROR] org.apache.maven.surefire.booter.SurefireBooterForkException: There was an error in the forked process [ERROR] java.lang.NoClassDefFoundError: org/junit/platform/launcher/core/LauncherFactory [ERROR] at org.apache.maven.plugin.surefire.booterclient.ForkStarter.fork(ForkStarter.java:657) [ERROR] at org.apache.maven.plugin.surefire.booterclient.ForkStarter.run(ForkStarter.java:283) [ERROR] at org.apache.maven.plugin.surefire.booterclient.ForkStarter.run(ForkStarter.java:246) [ERROR] at org.apache.maven.plugin.surefire.AbstractSurefireMojo.executeProvider(AbstractSurefireMojo.java:1161) [ERROR] at org.apache.maven.plugin.surefire.AbstractSurefireMojo.executeAfterPreconditionsChecked(AbstractSurefireMojo.java:1002) [ERROR] at org.apache.maven.plugin.surefire.AbstractSurefireMojo.execute(AbstractSurefireMojo.java:848) [ERROR] at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:137) [ERROR] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208) [ERROR] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:154) [ERROR] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:146) [ERROR] at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117) [ERROR] at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81) [ERROR] at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:56) [ERROR] at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128) [ERROR] at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:305) [ERROR] at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:192) [ERROR] at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:105) [ERROR] at org.apache.maven.cli.MavenCli.execute(MavenCli.java:954) [ERROR] at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:288) [ERROR] at org.apache.maven.cli.MavenCli.main(MavenCli.java:192) [ERROR] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [ERROR] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) [ERROR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [ERROR] at java.lang.reflect.Method.invoke(Method.java:498) [ERROR] at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289) [ERROR] at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229) [ERROR] at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415) [ERROR] at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356){noformat} This is in a module that uses Surefire and JUnit Jupiter 5.5: {noformat} org.junit.jupiter junit-jupiter 5.5.0 test org.apache.maven.plugins maven-surefire-plugin 2.22.2 {noformat} Earlier in the reactor, another project is built which depends on {{junit-platform-launcher}}: {noformat} org.junit.platform junit-platform-launcher 1.5.0 org.junit.jupiter junit-jupiter 5.5.0 test org.apache.maven.plugins maven-surefire-plugin 2.22.2 {noformat} For the problem to occur, both projects have to be built in the same reactor. Building of the module which depends on {{junit-platform-launcher}} is causing some pollution that results in the other module failing to build. I believe I've tracked down the cause of this pollution to some caching that's performed by [AbstractSurefireMojo|https://github.com/apache/maven-surefire/blob/d96b95c4bda73c4a93506db38b9ca76b4d7b5743/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/AbstractSure
[jira] [Updated] (SUREFIRE-1679) Caching of provider classpath with module-specific changes may break test bootstrapping in subsequent modules
[ https://issues.apache.org/jira/browse/SUREFIRE-1679?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andy Wilkinson updated SUREFIRE-1679: - Summary: Caching of provider classpath with module-specific changes may break test bootstrapping in subsequent modules (was: Caching of provider classpath with module-specific changes may break testing bootstrapping in subsequent modules) > Caching of provider classpath with module-specific changes may break test > bootstrapping in subsequent modules > - > > Key: SUREFIRE-1679 > URL: https://issues.apache.org/jira/browse/SUREFIRE-1679 > Project: Maven Surefire > Issue Type: Bug > Components: Maven Surefire Plugin >Affects Versions: 2.22.2, 3.0.0-M3 >Reporter: Andy Wilkinson >Priority: Major > Attachments: surefire-pollution-problem.zip > > > I believe I've identified a bug in the caching that's performed by > {{AbstractSurefireMojo}}. The problem that I am seeing is a failure to > bootstrap Surefire: > > {noformat} > [ERROR] org.apache.maven.surefire.booter.SurefireBooterForkException: There > was an error in the forked process > [ERROR] java.lang.NoClassDefFoundError: > org/junit/platform/launcher/core/LauncherFactory > [ERROR] at > org.apache.maven.plugin.surefire.booterclient.ForkStarter.fork(ForkStarter.java:657) > [ERROR] at > org.apache.maven.plugin.surefire.booterclient.ForkStarter.run(ForkStarter.java:283) > [ERROR] at > org.apache.maven.plugin.surefire.booterclient.ForkStarter.run(ForkStarter.java:246) > [ERROR] at > org.apache.maven.plugin.surefire.AbstractSurefireMojo.executeProvider(AbstractSurefireMojo.java:1161) > [ERROR] at > org.apache.maven.plugin.surefire.AbstractSurefireMojo.executeAfterPreconditionsChecked(AbstractSurefireMojo.java:1002) > [ERROR] at > org.apache.maven.plugin.surefire.AbstractSurefireMojo.execute(AbstractSurefireMojo.java:848) > [ERROR] at > org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:137) > [ERROR] at > org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208) > [ERROR] at > org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:154) > [ERROR] at > org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:146) > [ERROR] at > org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117) > [ERROR] at > org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81) > [ERROR] at > org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:56) > [ERROR] at > org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128) > [ERROR] at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:305) > [ERROR] at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:192) > [ERROR] at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:105) > [ERROR] at org.apache.maven.cli.MavenCli.execute(MavenCli.java:954) > [ERROR] at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:288) > [ERROR] at org.apache.maven.cli.MavenCli.main(MavenCli.java:192) > [ERROR] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > [ERROR] at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > [ERROR] at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [ERROR] at java.lang.reflect.Method.invoke(Method.java:498) > [ERROR] at > org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289) > [ERROR] at > org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229) > [ERROR] at > org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415) > [ERROR] at > org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356){noformat} > > This is in a module that uses Surefire and JUnit Jupiter 5.5: > > {noformat} > > > org.junit.jupiter > junit-jupiter > 5.5.0 > test > > > > > > org.apache.maven.plugins > maven-surefire-plugin > 2.22.2 > > > > {noformat} > > Earlier in the reactor, another project is built which depends on > {{junit-platform-launcher}}: > > {noformat} > > > org.junit.platform > junit-platform-launcher > 1.5.0 > > > org.junit.jupiter > junit-jupiter > 5.5.0 > test > > > > > >
[jira] [Updated] (SUREFIRE-1679) Caching of provider classpath with module-specific changes may break test bootstrapping in subsequent modules
[ https://issues.apache.org/jira/browse/SUREFIRE-1679?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andy Wilkinson updated SUREFIRE-1679: - Description: I believe I've identified a bug in the caching that's performed by {{AbstractSurefireMojo}}. The problem that I am seeing is a failure to bootstrap Surefire: {noformat} [ERROR] org.apache.maven.surefire.booter.SurefireBooterForkException: There was an error in the forked process [ERROR] java.lang.NoClassDefFoundError: org/junit/platform/launcher/core/LauncherFactory [ERROR] at org.apache.maven.plugin.surefire.booterclient.ForkStarter.fork(ForkStarter.java:657) [ERROR] at org.apache.maven.plugin.surefire.booterclient.ForkStarter.run(ForkStarter.java:283) [ERROR] at org.apache.maven.plugin.surefire.booterclient.ForkStarter.run(ForkStarter.java:246) [ERROR] at org.apache.maven.plugin.surefire.AbstractSurefireMojo.executeProvider(AbstractSurefireMojo.java:1161) [ERROR] at org.apache.maven.plugin.surefire.AbstractSurefireMojo.executeAfterPreconditionsChecked(AbstractSurefireMojo.java:1002) [ERROR] at org.apache.maven.plugin.surefire.AbstractSurefireMojo.execute(AbstractSurefireMojo.java:848) [ERROR] at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:137) [ERROR] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208) [ERROR] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:154) [ERROR] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:146) [ERROR] at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117) [ERROR] at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81) [ERROR] at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:56) [ERROR] at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128) [ERROR] at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:305) [ERROR] at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:192) [ERROR] at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:105) [ERROR] at org.apache.maven.cli.MavenCli.execute(MavenCli.java:954) [ERROR] at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:288) [ERROR] at org.apache.maven.cli.MavenCli.main(MavenCli.java:192) [ERROR] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [ERROR] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) [ERROR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [ERROR] at java.lang.reflect.Method.invoke(Method.java:498) [ERROR] at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289) [ERROR] at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229) [ERROR] at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415) [ERROR] at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356){noformat} This is in a module that uses Surefire and JUnit Jupiter 5.5: {noformat} org.junit.jupiter junit-jupiter 5.5.0 test org.apache.maven.plugins maven-surefire-plugin 2.22.2 {noformat} Earlier in the reactor, another project is built which depends on {{junit-platform-launcher}}: {noformat} org.junit.platform junit-platform-launcher 1.5.0 org.junit.jupiter junit-jupiter 5.5.0 test org.apache.maven.plugins maven-surefire-plugin 2.22.2 {noformat} For the problem to occur, both projects have to be built in the same reactor. Building of the module which depends on {{junit-platform-launcher}} is causing some pollution that results in the other module failing to build. I believe I've tracked down the cause of this pollution to some caching that's performed by [AbstractSurefireMojo|https://github.com/apache/maven-surefire/blob/d96b95c4bda73c4a93506db38b9ca76b4d7b5743/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/AbstractSurefireMojo.java#L1750-L1756]: {code:java} testClasspathWrapper.avoidArtifactDuplicates( providerArtifacts ); Classpath providerClasspath = ClasspathCache.getCachedClassPath( providerName ); if ( providerClasspath == null ) { providerClasspath = ClasspathCache.setCachedClasspath( providerName, providerArtifacts ); } {code} The fi
[jira] [Comment Edited] (SUREFIRE-1679) Caching of provider classpath with module-specific changes may break test bootstrapping in subsequent modules
[ https://issues.apache.org/jira/browse/SUREFIRE-1679?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16885086#comment-16885086 ] Tibor Digana edited comment on SUREFIRE-1679 at 7/15/19 11:00 AM: -- [~awilkinson] yes, you'r right, this is really an old practice {{ClasspathCache.setCachedClasspath()}}. Can you open a Pull Request on GitHUb with the fix? Search for usage of {{ClasspathCache}}. Ideally we should use instance object instead of static context. WDYT? was (Author: tibor17): [~awilkinson] yes, you'r righet, this is really an old practice {{ClasspathCache.setCachedClasspath()}}. Can you open a Pull Request on GitHUb with the fix? Search for usage of {{ClasspathCache}}. Ideally we should use instance object instead of static context. WDYT? > Caching of provider classpath with module-specific changes may break test > bootstrapping in subsequent modules > - > > Key: SUREFIRE-1679 > URL: https://issues.apache.org/jira/browse/SUREFIRE-1679 > Project: Maven Surefire > Issue Type: Bug > Components: Maven Surefire Plugin >Affects Versions: 2.22.2, 3.0.0-M3 >Reporter: Andy Wilkinson >Priority: Major > Attachments: surefire-pollution-problem.zip > > > I believe I've identified a bug in the caching that's performed by > {{AbstractSurefireMojo}}. The problem that I am seeing is a failure to > bootstrap Surefire: > > {noformat} > [ERROR] org.apache.maven.surefire.booter.SurefireBooterForkException: There > was an error in the forked process > [ERROR] java.lang.NoClassDefFoundError: > org/junit/platform/launcher/core/LauncherFactory > [ERROR] at > org.apache.maven.plugin.surefire.booterclient.ForkStarter.fork(ForkStarter.java:657) > [ERROR] at > org.apache.maven.plugin.surefire.booterclient.ForkStarter.run(ForkStarter.java:283) > [ERROR] at > org.apache.maven.plugin.surefire.booterclient.ForkStarter.run(ForkStarter.java:246) > [ERROR] at > org.apache.maven.plugin.surefire.AbstractSurefireMojo.executeProvider(AbstractSurefireMojo.java:1161) > [ERROR] at > org.apache.maven.plugin.surefire.AbstractSurefireMojo.executeAfterPreconditionsChecked(AbstractSurefireMojo.java:1002) > [ERROR] at > org.apache.maven.plugin.surefire.AbstractSurefireMojo.execute(AbstractSurefireMojo.java:848) > [ERROR] at > org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:137) > [ERROR] at > org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208) > [ERROR] at > org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:154) > [ERROR] at > org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:146) > [ERROR] at > org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117) > [ERROR] at > org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81) > [ERROR] at > org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:56) > [ERROR] at > org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128) > [ERROR] at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:305) > [ERROR] at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:192) > [ERROR] at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:105) > [ERROR] at org.apache.maven.cli.MavenCli.execute(MavenCli.java:954) > [ERROR] at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:288) > [ERROR] at org.apache.maven.cli.MavenCli.main(MavenCli.java:192) > [ERROR] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > [ERROR] at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > [ERROR] at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [ERROR] at java.lang.reflect.Method.invoke(Method.java:498) > [ERROR] at > org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289) > [ERROR] at > org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229) > [ERROR] at > org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415) > [ERROR] at > org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356){noformat} > > This is in a module that uses Surefire and JUnit Jupiter 5.5: > > {noformat} > > > org.junit.jupiter > junit-jupiter > 5.5.0 > test > > > > > > org.apache.maven.plugins > maven-surefire-plugin > 2.22.2 > > > > {noforma
[jira] [Commented] (SUREFIRE-1679) Caching of provider classpath with module-specific changes may break test bootstrapping in subsequent modules
[ https://issues.apache.org/jira/browse/SUREFIRE-1679?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16885086#comment-16885086 ] Tibor Digana commented on SUREFIRE-1679: [~awilkinson] yes, you'r righet, this is really an old practice {{ClasspathCache.setCachedClasspath()}}. Can you open a Pull Request on GitHUb with the fix? Search for usage of {{ClasspathCache}}. Ideally we should use instance object instead of static context. WDYT? > Caching of provider classpath with module-specific changes may break test > bootstrapping in subsequent modules > - > > Key: SUREFIRE-1679 > URL: https://issues.apache.org/jira/browse/SUREFIRE-1679 > Project: Maven Surefire > Issue Type: Bug > Components: Maven Surefire Plugin >Affects Versions: 2.22.2, 3.0.0-M3 >Reporter: Andy Wilkinson >Priority: Major > Attachments: surefire-pollution-problem.zip > > > I believe I've identified a bug in the caching that's performed by > {{AbstractSurefireMojo}}. The problem that I am seeing is a failure to > bootstrap Surefire: > > {noformat} > [ERROR] org.apache.maven.surefire.booter.SurefireBooterForkException: There > was an error in the forked process > [ERROR] java.lang.NoClassDefFoundError: > org/junit/platform/launcher/core/LauncherFactory > [ERROR] at > org.apache.maven.plugin.surefire.booterclient.ForkStarter.fork(ForkStarter.java:657) > [ERROR] at > org.apache.maven.plugin.surefire.booterclient.ForkStarter.run(ForkStarter.java:283) > [ERROR] at > org.apache.maven.plugin.surefire.booterclient.ForkStarter.run(ForkStarter.java:246) > [ERROR] at > org.apache.maven.plugin.surefire.AbstractSurefireMojo.executeProvider(AbstractSurefireMojo.java:1161) > [ERROR] at > org.apache.maven.plugin.surefire.AbstractSurefireMojo.executeAfterPreconditionsChecked(AbstractSurefireMojo.java:1002) > [ERROR] at > org.apache.maven.plugin.surefire.AbstractSurefireMojo.execute(AbstractSurefireMojo.java:848) > [ERROR] at > org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:137) > [ERROR] at > org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208) > [ERROR] at > org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:154) > [ERROR] at > org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:146) > [ERROR] at > org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117) > [ERROR] at > org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81) > [ERROR] at > org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:56) > [ERROR] at > org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128) > [ERROR] at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:305) > [ERROR] at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:192) > [ERROR] at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:105) > [ERROR] at org.apache.maven.cli.MavenCli.execute(MavenCli.java:954) > [ERROR] at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:288) > [ERROR] at org.apache.maven.cli.MavenCli.main(MavenCli.java:192) > [ERROR] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > [ERROR] at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > [ERROR] at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [ERROR] at java.lang.reflect.Method.invoke(Method.java:498) > [ERROR] at > org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289) > [ERROR] at > org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229) > [ERROR] at > org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415) > [ERROR] at > org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356){noformat} > > This is in a module that uses Surefire and JUnit Jupiter 5.5: > > {noformat} > > > org.junit.jupiter > junit-jupiter > 5.5.0 > test > > > > > > org.apache.maven.plugins > maven-surefire-plugin > 2.22.2 > > > > {noformat} > > Earlier in the reactor, another project is built which depends on > {{junit-platform-launcher}}: > > {noformat} > > > org.junit.platform > junit-platform-launcher > 1.5.0 > > > org.junit.jupiter > junit-jupiter > 5.5.0 >
[jira] [Updated] (SUREFIRE-1679) Caching of provider classpath with module-specific changes may break test bootstrapping in subsequent modules
[ https://issues.apache.org/jira/browse/SUREFIRE-1679?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Tibor Digana updated SUREFIRE-1679: --- Fix Version/s: 3.0.0-M4 > Caching of provider classpath with module-specific changes may break test > bootstrapping in subsequent modules > - > > Key: SUREFIRE-1679 > URL: https://issues.apache.org/jira/browse/SUREFIRE-1679 > Project: Maven Surefire > Issue Type: Bug > Components: Maven Surefire Plugin >Affects Versions: 2.22.2, 3.0.0-M3 >Reporter: Andy Wilkinson >Priority: Major > Fix For: 3.0.0-M4 > > Attachments: surefire-pollution-problem.zip > > > I believe I've identified a bug in the caching that's performed by > {{AbstractSurefireMojo}}. The problem that I am seeing is a failure to > bootstrap Surefire: > > {noformat} > [ERROR] org.apache.maven.surefire.booter.SurefireBooterForkException: There > was an error in the forked process > [ERROR] java.lang.NoClassDefFoundError: > org/junit/platform/launcher/core/LauncherFactory > [ERROR] at > org.apache.maven.plugin.surefire.booterclient.ForkStarter.fork(ForkStarter.java:657) > [ERROR] at > org.apache.maven.plugin.surefire.booterclient.ForkStarter.run(ForkStarter.java:283) > [ERROR] at > org.apache.maven.plugin.surefire.booterclient.ForkStarter.run(ForkStarter.java:246) > [ERROR] at > org.apache.maven.plugin.surefire.AbstractSurefireMojo.executeProvider(AbstractSurefireMojo.java:1161) > [ERROR] at > org.apache.maven.plugin.surefire.AbstractSurefireMojo.executeAfterPreconditionsChecked(AbstractSurefireMojo.java:1002) > [ERROR] at > org.apache.maven.plugin.surefire.AbstractSurefireMojo.execute(AbstractSurefireMojo.java:848) > [ERROR] at > org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:137) > [ERROR] at > org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208) > [ERROR] at > org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:154) > [ERROR] at > org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:146) > [ERROR] at > org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117) > [ERROR] at > org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81) > [ERROR] at > org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:56) > [ERROR] at > org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128) > [ERROR] at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:305) > [ERROR] at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:192) > [ERROR] at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:105) > [ERROR] at org.apache.maven.cli.MavenCli.execute(MavenCli.java:954) > [ERROR] at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:288) > [ERROR] at org.apache.maven.cli.MavenCli.main(MavenCli.java:192) > [ERROR] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > [ERROR] at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > [ERROR] at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [ERROR] at java.lang.reflect.Method.invoke(Method.java:498) > [ERROR] at > org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289) > [ERROR] at > org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229) > [ERROR] at > org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415) > [ERROR] at > org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356){noformat} > > This is in a module that uses Surefire and JUnit Jupiter 5.5: > > {noformat} > > > org.junit.jupiter > junit-jupiter > 5.5.0 > test > > > > > > org.apache.maven.plugins > maven-surefire-plugin > 2.22.2 > > > > {noformat} > > Earlier in the reactor, another project is built which depends on > {{junit-platform-launcher}}: > > {noformat} > > > org.junit.platform > junit-platform-launcher > 1.5.0 > > > org.junit.jupiter > junit-jupiter > 5.5.0 > test > > > > > > org.apache.maven.plugins > maven-surefire-plugin > 2.22.2 > > > > {noformat} > For the problem to occur, both projects ha
[jira] [Updated] (SUREFIRE-1675) Forked JVM terminates with 'halt' when another module's tests fail
[ https://issues.apache.org/jira/browse/SUREFIRE-1675?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Tibor Digana updated SUREFIRE-1675: --- Fix Version/s: 3.0.0-M4 > Forked JVM terminates with 'halt' when another module's tests fail > -- > > Key: SUREFIRE-1675 > URL: https://issues.apache.org/jira/browse/SUREFIRE-1675 > Project: Maven Surefire > Issue Type: Bug > Components: Maven Surefire Plugin >Affects Versions: 2.22.2, 3.0.0-M2 >Reporter: Mohsen Hariri >Priority: Major > Fix For: 3.0.0-M4 > > Attachments: badshutdown.zip > > > *Steps to reproduce:* > Run the attached project with the following command: > {noformat} > mvn test -T2{noformat} > *Expected outcome:* > The 'long' modules's test's shutdown hook should be called > > *Actual outcome:* > The 'long' modules test's shutdown hook is never called > > *Workaround:* > Use {{shutdown=exit}} configuration as below: > {noformat} > > maven-surefire-plugin > > exit > > > {noformat} -- This message was sent by Atlassian JIRA (v7.6.14#76016)
[jira] [Assigned] (SUREFIRE-1675) Forked JVM terminates with 'halt' when another module's tests fail
[ https://issues.apache.org/jira/browse/SUREFIRE-1675?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Tibor Digana reassigned SUREFIRE-1675: -- Assignee: Tibor Digana > Forked JVM terminates with 'halt' when another module's tests fail > -- > > Key: SUREFIRE-1675 > URL: https://issues.apache.org/jira/browse/SUREFIRE-1675 > Project: Maven Surefire > Issue Type: Bug > Components: Maven Surefire Plugin >Affects Versions: 2.22.2, 3.0.0-M2 >Reporter: Mohsen Hariri >Assignee: Tibor Digana >Priority: Major > Fix For: 3.0.0-M4 > > Attachments: badshutdown.zip > > > *Steps to reproduce:* > Run the attached project with the following command: > {noformat} > mvn test -T2{noformat} > *Expected outcome:* > The 'long' modules's test's shutdown hook should be called > > *Actual outcome:* > The 'long' modules test's shutdown hook is never called > > *Workaround:* > Use {{shutdown=exit}} configuration as below: > {noformat} > > maven-surefire-plugin > > exit > > > {noformat} -- This message was sent by Atlassian JIRA (v7.6.14#76016)
[jira] [Commented] (SUREFIRE-1675) Forked JVM terminates with 'halt' when another module's tests fail
[ https://issues.apache.org/jira/browse/SUREFIRE-1675?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16885088#comment-16885088 ] Tibor Digana commented on SUREFIRE-1675: We in ASF Maven have failing build of Surefire project because of the same issue, at least it looks the same. Trying to investigate it in the branch {{buildfix}}. > Forked JVM terminates with 'halt' when another module's tests fail > -- > > Key: SUREFIRE-1675 > URL: https://issues.apache.org/jira/browse/SUREFIRE-1675 > Project: Maven Surefire > Issue Type: Bug > Components: Maven Surefire Plugin >Affects Versions: 2.22.2, 3.0.0-M2 >Reporter: Mohsen Hariri >Assignee: Tibor Digana >Priority: Major > Fix For: 3.0.0-M4 > > Attachments: badshutdown.zip > > > *Steps to reproduce:* > Run the attached project with the following command: > {noformat} > mvn test -T2{noformat} > *Expected outcome:* > The 'long' modules's test's shutdown hook should be called > > *Actual outcome:* > The 'long' modules test's shutdown hook is never called > > *Workaround:* > Use {{shutdown=exit}} configuration as below: > {noformat} > > maven-surefire-plugin > > exit > > > {noformat} -- This message was sent by Atlassian JIRA (v7.6.14#76016)
[jira] [Created] (MNG-6710) Stackoverflow while compiling Java Sources, but works after renaming project directory
Markus Bader created MNG-6710: - Summary: Stackoverflow while compiling Java Sources, but works after renaming project directory Key: MNG-6710 URL: https://issues.apache.org/jira/browse/MNG-6710 Project: Maven Issue Type: Bug Affects Versions: 3.6.1 Environment: The problem occurs with Windows 10 and also with Windows 7. Reporter: Markus Bader Attachments: build.log Me and one of my colleagues have following problem (others do not): We want to build a maven project, but "mvn clean install" ends up in a stackoverflow error. But after renaming the project directory, it works. Also after renaming the name of the parent directory and leaving the name of the project directory by its original value, compilation is possible. I also tried changing the artifactId so that it doesn't match the folder name. Result: stackoverflow. To make it more strange: I tried to reduce the used Java classes for possibly identifying a class to be responsible for this phenomenon. Therefor I deleted a class named "MathParser" and after that compilation was possible. So I analysed the content of the class and found out, that the stackoverflow error occurs even if the class ist nearly empty. With following content I can reproduce the error: {code:java} package some.anonymised.package; public class MathParser { private void doSomething(String func) throws Exception { throw new Exception ("function '" + func + "' is not defined"); } } {code} With an empty method body, the build works fine. I attached the log created with debug option activated (with reduced number of classes and reduced content of MathParser). For anonymisation purposes I replaced the name of some directories, packages etc. by "x". -- This message was sent by Atlassian JIRA (v7.6.14#76016)
[jira] [Commented] (MNG-6710) Stackoverflow while compiling Java Sources, but works after renaming project directory
[ https://issues.apache.org/jira/browse/MNG-6710?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16885117#comment-16885117 ] Markus Bader commented on MNG-6710: --- Hmpf! After restoring the whole project and reducing the MathParser class to the minimum as described above, the StackOverflowError still occurs. It seems thatteh cause is to be saught it's the whole constellation and not only the one class. :( > Stackoverflow while compiling Java Sources, but works after renaming project > directory > -- > > Key: MNG-6710 > URL: https://issues.apache.org/jira/browse/MNG-6710 > Project: Maven > Issue Type: Bug >Affects Versions: 3.6.1 > Environment: The problem occurs with Windows 10 and also with Windows > 7. >Reporter: Markus Bader >Priority: Major > Attachments: build.log > > > Me and one of my colleagues have following problem (others do not): We want > to build a maven project, but "mvn clean install" ends up in a stackoverflow > error. But after renaming the project directory, it works. Also after > renaming the name of the parent directory and leaving the name of the project > directory by its original value, compilation is possible. > I also tried changing the artifactId so that it doesn't match the folder > name. Result: stackoverflow. > To make it more strange: I tried to reduce the used Java classes for possibly > identifying a class to be responsible for this phenomenon. Therefor I deleted > a class named "MathParser" and after that compilation was possible. So I > analysed the content of the class and found out, that the stackoverflow error > occurs even if the class ist nearly empty. With following content I can > reproduce the error: > > {code:java} > package some.anonymised.package; > public class MathParser { > private void doSomething(String func) throws Exception { > throw new Exception ("function '" + func + "' is not defined"); > } > } {code} > With an empty method body, the build works fine. > I attached the log created with debug option activated (with reduced number > of classes and reduced content of MathParser). For anonymisation purposes I > replaced the name of some directories, packages etc. by "x". -- This message was sent by Atlassian JIRA (v7.6.14#76016)
[jira] [Comment Edited] (MNG-6710) Stackoverflow while compiling Java Sources, but works after renaming project directory
[ https://issues.apache.org/jira/browse/MNG-6710?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16885117#comment-16885117 ] Markus Bader edited comment on MNG-6710 at 7/15/19 1:19 PM: Hmpf! After restoring the whole project and reducing the MathParser class to the minimum as described above, the StackOverflowError still occurs. It seems that the cause is to be saught in the whole constellation and not only in the one class. :( was (Author: loeti): Hmpf! After restoring the whole project and reducing the MathParser class to the minimum as described above, the StackOverflowError still occurs. It seems thatteh cause is to be saught it's the whole constellation and not only the one class. :( > Stackoverflow while compiling Java Sources, but works after renaming project > directory > -- > > Key: MNG-6710 > URL: https://issues.apache.org/jira/browse/MNG-6710 > Project: Maven > Issue Type: Bug >Affects Versions: 3.6.1 > Environment: The problem occurs with Windows 10 and also with Windows > 7. >Reporter: Markus Bader >Priority: Major > Attachments: build.log > > > Me and one of my colleagues have following problem (others do not): We want > to build a maven project, but "mvn clean install" ends up in a stackoverflow > error. But after renaming the project directory, it works. Also after > renaming the name of the parent directory and leaving the name of the project > directory by its original value, compilation is possible. > I also tried changing the artifactId so that it doesn't match the folder > name. Result: stackoverflow. > To make it more strange: I tried to reduce the used Java classes for possibly > identifying a class to be responsible for this phenomenon. Therefor I deleted > a class named "MathParser" and after that compilation was possible. So I > analysed the content of the class and found out, that the stackoverflow error > occurs even if the class ist nearly empty. With following content I can > reproduce the error: > > {code:java} > package some.anonymised.package; > public class MathParser { > private void doSomething(String func) throws Exception { > throw new Exception ("function '" + func + "' is not defined"); > } > } {code} > With an empty method body, the build works fine. > I attached the log created with debug option activated (with reduced number > of classes and reduced content of MathParser). For anonymisation purposes I > replaced the name of some directories, packages etc. by "x". -- This message was sent by Atlassian JIRA (v7.6.14#76016)
[GitHub] [maven-surefire] dejan2609 commented on issue #233: WIP [SUREFIRE-1494] default provider for JUnit4 integration tests is changed (from 'surefire-junit4' to 'surefire-junit47')
dejan2609 commented on issue #233: WIP [SUREFIRE-1494] default provider for JUnit4 integration tests is changed (from 'surefire-junit4' to 'surefire-junit47') URL: https://github.com/apache/maven-surefire/pull/233#issuecomment-511425342 @eolivelli here it is, LMK do you need some additional information: https://issues.apache.org/jira/browse/INFRA-18752 FYI @Tibor17 I need few more days to sort out some issues, and after that I will push code for a review. This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org With regards, Apache Git Services
[jira] [Commented] (SUREFIRE-1676) surefire-junit47 is not running JUnit4 tests
[ https://issues.apache.org/jira/browse/SUREFIRE-1676?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16885349#comment-16885349 ] Tibor Digana commented on SUREFIRE-1676: Honestly these things are well tested. So, can you develop a project on GitHub and let me reproduce this issue with your code? Also type what command you execute for your Maven build. > surefire-junit47 is not running JUnit4 tests > > > Key: SUREFIRE-1676 > URL: https://issues.apache.org/jira/browse/SUREFIRE-1676 > Project: Maven Surefire > Issue Type: Bug > Components: Maven Surefire Plugin >Affects Versions: 3.0.0-M3 > Environment: Windows 10 and Centos 7 behave the same. > java 1.8.161 >Reporter: Bobby Erwin >Priority: Major > Attachments: mvn -X output2.txt, mvn-dependency-tree.log > > > In a maven project with lots of JUnit 4 tests, surefire-junit47 is not > executing the tests. > There are no testng tests in this project, and there is no testng in the pom. > But this project has a dependency on another project that does have testng in > the pom. You can see it import testng in the mvn -X output, attached. > With testng on the classpath, surefire tries to execute tests through testng. > So we're configuring our test execution based on this page: > https://maven.apache.org/surefire/maven-surefire-plugin/examples/testng.html > For reference sake, here is the documentation I'm working > from:[https://maven.apache.org/surefire/maven-surefire-plugin/examples/inclusion-exclusion.html] > Curiously enough, it appears to find the test classes, but doesn't execute > the methods. That is, if processes all the static fields and @Parameterized > methods, but it doesn't execute any @Test methods. > Here are a couple of pom configurations that show the problem. > Given this test class organization: > {code:java} > - src/main/test/ >- com.mycomp.qc.core.account > - CopyAccountTests.java > - CreateAccountTests.java > - DeleteAccountTests.java > - ListAccountTests.java > - ReadAccountTests.java > - UpdateAccountTests.java >- com.mycomp.qc.core.product > - CopyProductTests.java > - CreateProductTests.java > - DeleteProductTests.java > - ListProductTests.java > - ReadProductTests.java > - UpdateProductTests.java >- . and 300 more packages .{code} > > And given this test class structure: > {code:java} > package com.mycomp.qc.core.account; > import org.junit.Assert; > import org.junit.Test; > and more > public class CopyAccountTests { > @Test > public void copyAccount1() { > Assert.assertTrue("pass", true); > } > @Test > public void copyAccount2() { > Assert.assertTrue("fail", false); > } > and more > }{code} > > *pom config 1: Specifically include Account tests, by pattern* > Runs all the Account tests, just as the documentation indicates. > {code:xml} > > org.apache.maven.plugins > maven-surefire-plugin > ${surefire.version} > > > org.apache.maven.surefire > surefire-junit47 > ${surefire.version} > > > > true > > *Account* > > 1 > > > > default-test > test > > test > > > > > {code} > *pom config 2: Specifically include Account tests, by pattern* > Runs all the Account and Product tests, just as the documentation indicates. > {code:xml} > > org.apache.maven.plugins > maven-surefire-plugin > ${surefire.version} > > > org.apache.maven.surefire > surefire-junit47 > ${surefire.version} > > > > true > > *Account* > *Product* > > 1 > > > > default-test > test > > test > > > > > {code} > *pom config 3: Include all tests, based on default surefire* > Finds and initializes test classes, but does not execute any @Test methods. > {code:xml} > > org.apache.maven.plugins > maven-surefire-plugin > ${surefire.version} > > > org.apache.maven.surefire > surefire-junit47 > ${surefire.version} > > > > true > 1 > > > > default-test > test > > test > > > > > {code} > *pom config 4: Include all tests, by pattern* > Finds and initializes test classes, but does not execute any @Test methods. > {code:xml} > > org.apache.maven.pl
[jira] [Commented] (SUREFIRE-1676) surefire-junit47 is not running JUnit4 tests
[ https://issues.apache.org/jira/browse/SUREFIRE-1676?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16885409#comment-16885409 ] Tibor Digana commented on SUREFIRE-1676: [~bobanahalf] > If I run it with CopyAccountTest.java, i... Try with this: **/*Account*Test.java It will execute all test classes which names contain the string "Account" and they end with "Test". > I'm not sure what you mean by 'do not use start in filter.' > Do you mean the pattern should be .*Test.* like regex? Or that I should use a > regex filter? Exactly I mean regex: %regex[.*Account.*Test] If Java regex is too complex, you can use **/*Account*Test.java Whichever is more suited for you. > Regarding , you mean it's just not necessary? yes,it is not necessary because of test Surefire has default binding with test phase. So you do not have to repeat what Maven already has implicit. > I do have the dependency junit 4.12. Is there something missing from my > dependency:tree? I did not see whole project. I said that because the provider 4.7 needs to see JUnit in dependencies. Of course the higher version the better. ok, let me know how it is with the pattern now. > surefire-junit47 is not running JUnit4 tests > > > Key: SUREFIRE-1676 > URL: https://issues.apache.org/jira/browse/SUREFIRE-1676 > Project: Maven Surefire > Issue Type: Bug > Components: Maven Surefire Plugin >Affects Versions: 3.0.0-M3 > Environment: Windows 10 and Centos 7 behave the same. > java 1.8.161 >Reporter: Bobby Erwin >Priority: Major > Attachments: mvn -X output2.txt, mvn-dependency-tree.log > > > In a maven project with lots of JUnit 4 tests, surefire-junit47 is not > executing the tests. > There are no testng tests in this project, and there is no testng in the pom. > But this project has a dependency on another project that does have testng in > the pom. You can see it import testng in the mvn -X output, attached. > With testng on the classpath, surefire tries to execute tests through testng. > So we're configuring our test execution based on this page: > https://maven.apache.org/surefire/maven-surefire-plugin/examples/testng.html > For reference sake, here is the documentation I'm working > from:[https://maven.apache.org/surefire/maven-surefire-plugin/examples/inclusion-exclusion.html] > Curiously enough, it appears to find the test classes, but doesn't execute > the methods. That is, if processes all the static fields and @Parameterized > methods, but it doesn't execute any @Test methods. > Here are a couple of pom configurations that show the problem. > Given this test class organization: > {code:java} > - src/main/test/ >- com.mycomp.qc.core.account > - CopyAccountTests.java > - CreateAccountTests.java > - DeleteAccountTests.java > - ListAccountTests.java > - ReadAccountTests.java > - UpdateAccountTests.java >- com.mycomp.qc.core.product > - CopyProductTests.java > - CreateProductTests.java > - DeleteProductTests.java > - ListProductTests.java > - ReadProductTests.java > - UpdateProductTests.java >- . and 300 more packages .{code} > > And given this test class structure: > {code:java} > package com.mycomp.qc.core.account; > import org.junit.Assert; > import org.junit.Test; > and more > public class CopyAccountTests { > @Test > public void copyAccount1() { > Assert.assertTrue("pass", true); > } > @Test > public void copyAccount2() { > Assert.assertTrue("fail", false); > } > and more > }{code} > > *pom config 1: Specifically include Account tests, by pattern* > Runs all the Account tests, just as the documentation indicates. > {code:xml} > > org.apache.maven.plugins > maven-surefire-plugin > ${surefire.version} > > > org.apache.maven.surefire > surefire-junit47 > ${surefire.version} > > > > true > > *Account* > > 1 > > > > default-test > test > > test > > > > > {code} > *pom config 2: Specifically include Account tests, by pattern* > Runs all the Account and Product tests, just as the documentation indicates. > {code:xml} > > org.apache.maven.plugins > maven-surefire-plugin > ${surefire.version} > > > org.apache.maven.surefire > surefire-junit47 > ${surefire.version} > > > > true > > *Account* > *Product* > > 1 > > > > default-test > test >
[jira] [Comment Edited] (SUREFIRE-1676) surefire-junit47 is not running JUnit4 tests
[ https://issues.apache.org/jira/browse/SUREFIRE-1676?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16885409#comment-16885409 ] Tibor Digana edited comment on SUREFIRE-1676 at 7/15/19 5:03 PM: - [~bobanahalf] >> If I run it with CopyAccountTest.java, i... Try with this: **/*Account*Test.java It will execute all test classes which names contain the string "Account" and they end with "Test". >> I'm not sure what you mean by 'do not use start in filter.' >> Do you mean the pattern should be .*Test.* like regex? Or that I should use >> a regex filter? Exactly I mean regex: %regex[.*Account.*Test] If Java regex is too complex, you can use **/*Account*Test.java Whichever is more suited for you. >> Regarding , you mean it's just not necessary? yes,it is not necessary because of test Surefire has default binding with test phase. So you do not have to repeat what Maven already has implicit. >> I do have the dependency junit 4.12. Is there something missing from my >> dependency:tree? I did not see whole project. I said that because the provider 4.7 needs to see JUnit in dependencies. Of course the higher version the better. ok, let me know how it is with the pattern now. was (Author: tibor17): [~bobanahalf] > If I run it with CopyAccountTest.java, i... Try with this: **/*Account*Test.java It will execute all test classes which names contain the string "Account" and they end with "Test". > I'm not sure what you mean by 'do not use start in filter.' > Do you mean the pattern should be .*Test.* like regex? Or that I should use a > regex filter? Exactly I mean regex: %regex[.*Account.*Test] If Java regex is too complex, you can use **/*Account*Test.java Whichever is more suited for you. > Regarding , you mean it's just not necessary? yes,it is not necessary because of test Surefire has default binding with test phase. So you do not have to repeat what Maven already has implicit. > I do have the dependency junit 4.12. Is there something missing from my > dependency:tree? I did not see whole project. I said that because the provider 4.7 needs to see JUnit in dependencies. Of course the higher version the better. ok, let me know how it is with the pattern now. > surefire-junit47 is not running JUnit4 tests > > > Key: SUREFIRE-1676 > URL: https://issues.apache.org/jira/browse/SUREFIRE-1676 > Project: Maven Surefire > Issue Type: Bug > Components: Maven Surefire Plugin >Affects Versions: 3.0.0-M3 > Environment: Windows 10 and Centos 7 behave the same. > java 1.8.161 >Reporter: Bobby Erwin >Priority: Major > Attachments: mvn -X output2.txt, mvn-dependency-tree.log > > > In a maven project with lots of JUnit 4 tests, surefire-junit47 is not > executing the tests. > There are no testng tests in this project, and there is no testng in the pom. > But this project has a dependency on another project that does have testng in > the pom. You can see it import testng in the mvn -X output, attached. > With testng on the classpath, surefire tries to execute tests through testng. > So we're configuring our test execution based on this page: > https://maven.apache.org/surefire/maven-surefire-plugin/examples/testng.html > For reference sake, here is the documentation I'm working > from:[https://maven.apache.org/surefire/maven-surefire-plugin/examples/inclusion-exclusion.html] > Curiously enough, it appears to find the test classes, but doesn't execute > the methods. That is, if processes all the static fields and @Parameterized > methods, but it doesn't execute any @Test methods. > Here are a couple of pom configurations that show the problem. > Given this test class organization: > {code:java} > - src/main/test/ >- com.mycomp.qc.core.account > - CopyAccountTests.java > - CreateAccountTests.java > - DeleteAccountTests.java > - ListAccountTests.java > - ReadAccountTests.java > - UpdateAccountTests.java >- com.mycomp.qc.core.product > - CopyProductTests.java > - CreateProductTests.java > - DeleteProductTests.java > - ListProductTests.java > - ReadProductTests.java > - UpdateProductTests.java >- . and 300 more packages .{code} > > And given this test class structure: > {code:java} > package com.mycomp.qc.core.account; > import org.junit.Assert; > import org.junit.Test; > and more > public class CopyAccountTests { > @Test > public void copyAccount1() { > Assert.assertTrue("pass", true); > } > @Test > public void copyAccount2() { > Assert.assertTrue("fail", false); > } > and more > }{code} > > *pom config 1: Specifically include Account tests, by pattern* > Runs all the Account tests, j
[jira] [Commented] (SUREFIRE-1676) surefire-junit47 is not running JUnit4 tests
[ https://issues.apache.org/jira/browse/SUREFIRE-1676?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16885451#comment-16885451 ] Bobby Erwin commented on SUREFIRE-1676: --- H... I tried to build a smaller copy of this project, and it handled includes exactly as documented. The project has the same pom and dependencies, but far fewer test packages. That leads me to believe there is something wrong with my project. What could that be? Here is an example of the mvn command I'm using: {code:java} mvn clean install -f single-test.xml{code} Very generic, except I'm pointing to a different xml file for testing. *If I run it with **/*Account*Test*.java* Like this: {code:xml} true **/*Account*Test*.java 1 {code} It runs all the Account tests, exactly as expected. *If I run it with %regex[.*Account.*Test.*]* Like this: {code:xml} %regex[.*Account.*Test.*]{code} I get the same output as the previous example. All the account tests. *If I run it with *If I run it with %regex[.*Test]* Like this: {code:xml} %regex[.*Test.*]{code} It goes right back to running the parameters, without running the methods. > surefire-junit47 is not running JUnit4 tests > > > Key: SUREFIRE-1676 > URL: https://issues.apache.org/jira/browse/SUREFIRE-1676 > Project: Maven Surefire > Issue Type: Bug > Components: Maven Surefire Plugin >Affects Versions: 3.0.0-M3 > Environment: Windows 10 and Centos 7 behave the same. > java 1.8.161 >Reporter: Bobby Erwin >Priority: Major > Attachments: mvn -X output2.txt, mvn-dependency-tree.log > > > In a maven project with lots of JUnit 4 tests, surefire-junit47 is not > executing the tests. > There are no testng tests in this project, and there is no testng in the pom. > But this project has a dependency on another project that does have testng in > the pom. You can see it import testng in the mvn -X output, attached. > With testng on the classpath, surefire tries to execute tests through testng. > So we're configuring our test execution based on this page: > https://maven.apache.org/surefire/maven-surefire-plugin/examples/testng.html > For reference sake, here is the documentation I'm working > from:[https://maven.apache.org/surefire/maven-surefire-plugin/examples/inclusion-exclusion.html] > Curiously enough, it appears to find the test classes, but doesn't execute > the methods. That is, if processes all the static fields and @Parameterized > methods, but it doesn't execute any @Test methods. > Here are a couple of pom configurations that show the problem. > Given this test class organization: > {code:java} > - src/main/test/ >- com.mycomp.qc.core.account > - CopyAccountTests.java > - CreateAccountTests.java > - DeleteAccountTests.java > - ListAccountTests.java > - ReadAccountTests.java > - UpdateAccountTests.java >- com.mycomp.qc.core.product > - CopyProductTests.java > - CreateProductTests.java > - DeleteProductTests.java > - ListProductTests.java > - ReadProductTests.java > - UpdateProductTests.java >- . and 300 more packages .{code} > > And given this test class structure: > {code:java} > package com.mycomp.qc.core.account; > import org.junit.Assert; > import org.junit.Test; > and more > public class CopyAccountTests { > @Test > public void copyAccount1() { > Assert.assertTrue("pass", true); > } > @Test > public void copyAccount2() { > Assert.assertTrue("fail", false); > } > and more > }{code} > > *pom config 1: Specifically include Account tests, by pattern* > Runs all the Account tests, just as the documentation indicates. > {code:xml} > > org.apache.maven.plugins > maven-surefire-plugin > ${surefire.version} > > > org.apache.maven.surefire > surefire-junit47 > ${surefire.version} > > > > true > > *Account* > > 1 > > > > default-test > test > > test > > > > > {code} > *pom config 2: Specifically include Account tests, by pattern* > Runs all the Account and Product tests, just as the documentation indicates. > {code:xml} > > org.apache.maven.plugins > maven-surefire-plugin > ${surefire.version} > > > org.apache.maven.surefire > surefire-junit47 > ${surefire.version} > > > > true > > *Account* > *Product* > > 1 > > > > default-test >
[GitHub] [maven-wagon] erikhakansson commented on issue #49: [MNG-2802] Concurrent-safe access to local Maven repository
erikhakansson commented on issue #49: [MNG-2802] Concurrent-safe access to local Maven repository URL: https://github.com/apache/maven-wagon/pull/49#issuecomment-511514036 @Tibor17 as per discussion with @michael-o, this functionality probably needs to reside elsewhere anyway. This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org With regards, Apache Git Services
[jira] [Commented] (SUREFIRE-1676) surefire-junit47 is not running JUnit4 tests
[ https://issues.apache.org/jira/browse/SUREFIRE-1676?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16885517#comment-16885517 ] Tibor Digana commented on SUREFIRE-1676: >>It goes right back to running the parameters, without running the methods. I do not understand what parameters you mean? Btw, do you have pure test classes which do not have {{@RunWith}} annotation on the class? You have parameterized tests. These are documented as well and I remember that parameterized tests have brackes in JUnit Description and these must be respected. Long time ago when I maintained this feature but the documentation talks about them. > surefire-junit47 is not running JUnit4 tests > > > Key: SUREFIRE-1676 > URL: https://issues.apache.org/jira/browse/SUREFIRE-1676 > Project: Maven Surefire > Issue Type: Bug > Components: Maven Surefire Plugin >Affects Versions: 3.0.0-M3 > Environment: Windows 10 and Centos 7 behave the same. > java 1.8.161 >Reporter: Bobby Erwin >Priority: Major > Attachments: mvn -X output2.txt, mvn-dependency-tree.log > > > In a maven project with lots of JUnit 4 tests, surefire-junit47 is not > executing the tests. > There are no testng tests in this project, and there is no testng in the pom. > But this project has a dependency on another project that does have testng in > the pom. You can see it import testng in the mvn -X output, attached. > With testng on the classpath, surefire tries to execute tests through testng. > So we're configuring our test execution based on this page: > https://maven.apache.org/surefire/maven-surefire-plugin/examples/testng.html > For reference sake, here is the documentation I'm working > from:[https://maven.apache.org/surefire/maven-surefire-plugin/examples/inclusion-exclusion.html] > Curiously enough, it appears to find the test classes, but doesn't execute > the methods. That is, if processes all the static fields and @Parameterized > methods, but it doesn't execute any @Test methods. > Here are a couple of pom configurations that show the problem. > Given this test class organization: > {code:java} > - src/main/test/ >- com.mycomp.qc.core.account > - CopyAccountTests.java > - CreateAccountTests.java > - DeleteAccountTests.java > - ListAccountTests.java > - ReadAccountTests.java > - UpdateAccountTests.java >- com.mycomp.qc.core.product > - CopyProductTests.java > - CreateProductTests.java > - DeleteProductTests.java > - ListProductTests.java > - ReadProductTests.java > - UpdateProductTests.java >- . and 300 more packages .{code} > > And given this test class structure: > {code:java} > package com.mycomp.qc.core.account; > import org.junit.Assert; > import org.junit.Test; > and more > public class CopyAccountTests { > @Test > public void copyAccount1() { > Assert.assertTrue("pass", true); > } > @Test > public void copyAccount2() { > Assert.assertTrue("fail", false); > } > and more > }{code} > > *pom config 1: Specifically include Account tests, by pattern* > Runs all the Account tests, just as the documentation indicates. > {code:xml} > > org.apache.maven.plugins > maven-surefire-plugin > ${surefire.version} > > > org.apache.maven.surefire > surefire-junit47 > ${surefire.version} > > > > true > > *Account* > > 1 > > > > default-test > test > > test > > > > > {code} > *pom config 2: Specifically include Account tests, by pattern* > Runs all the Account and Product tests, just as the documentation indicates. > {code:xml} > > org.apache.maven.plugins > maven-surefire-plugin > ${surefire.version} > > > org.apache.maven.surefire > surefire-junit47 > ${surefire.version} > > > > true > > *Account* > *Product* > > 1 > > > > default-test > test > > test > > > > > {code} > *pom config 3: Include all tests, based on default surefire* > Finds and initializes test classes, but does not execute any @Test methods. > {code:xml} > > org.apache.maven.plugins > maven-surefire-plugin > ${surefire.version} > > > org.apache.maven.surefire > surefire-junit47 > ${surefire.version} > > > > true > 1 > > > >
[jira] [Comment Edited] (SUREFIRE-1676) surefire-junit47 is not running JUnit4 tests
[ https://issues.apache.org/jira/browse/SUREFIRE-1676?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16885517#comment-16885517 ] Tibor Digana edited comment on SUREFIRE-1676 at 7/15/19 6:56 PM: - >>It goes right back to running the parameters, without running the methods. I do not understand what parameters you mean? Btw, do you have pure test classes which do not have {{@RunWith}} annotation on the class? You have parameterized tests? These are documented as well and I remember that parameterized tests have brackes in JUnit Description and these must be respected. Long time ago when I maintained this feature but the documentation talks about them. was (Author: tibor17): >>It goes right back to running the parameters, without running the methods. I do not understand what parameters you mean? Btw, do you have pure test classes which do not have {{@RunWith}} annotation on the class? You have parameterized tests. These are documented as well and I remember that parameterized tests have brackes in JUnit Description and these must be respected. Long time ago when I maintained this feature but the documentation talks about them. > surefire-junit47 is not running JUnit4 tests > > > Key: SUREFIRE-1676 > URL: https://issues.apache.org/jira/browse/SUREFIRE-1676 > Project: Maven Surefire > Issue Type: Bug > Components: Maven Surefire Plugin >Affects Versions: 3.0.0-M3 > Environment: Windows 10 and Centos 7 behave the same. > java 1.8.161 >Reporter: Bobby Erwin >Priority: Major > Attachments: mvn -X output2.txt, mvn-dependency-tree.log > > > In a maven project with lots of JUnit 4 tests, surefire-junit47 is not > executing the tests. > There are no testng tests in this project, and there is no testng in the pom. > But this project has a dependency on another project that does have testng in > the pom. You can see it import testng in the mvn -X output, attached. > With testng on the classpath, surefire tries to execute tests through testng. > So we're configuring our test execution based on this page: > https://maven.apache.org/surefire/maven-surefire-plugin/examples/testng.html > For reference sake, here is the documentation I'm working > from:[https://maven.apache.org/surefire/maven-surefire-plugin/examples/inclusion-exclusion.html] > Curiously enough, it appears to find the test classes, but doesn't execute > the methods. That is, if processes all the static fields and @Parameterized > methods, but it doesn't execute any @Test methods. > Here are a couple of pom configurations that show the problem. > Given this test class organization: > {code:java} > - src/main/test/ >- com.mycomp.qc.core.account > - CopyAccountTests.java > - CreateAccountTests.java > - DeleteAccountTests.java > - ListAccountTests.java > - ReadAccountTests.java > - UpdateAccountTests.java >- com.mycomp.qc.core.product > - CopyProductTests.java > - CreateProductTests.java > - DeleteProductTests.java > - ListProductTests.java > - ReadProductTests.java > - UpdateProductTests.java >- . and 300 more packages .{code} > > And given this test class structure: > {code:java} > package com.mycomp.qc.core.account; > import org.junit.Assert; > import org.junit.Test; > and more > public class CopyAccountTests { > @Test > public void copyAccount1() { > Assert.assertTrue("pass", true); > } > @Test > public void copyAccount2() { > Assert.assertTrue("fail", false); > } > and more > }{code} > > *pom config 1: Specifically include Account tests, by pattern* > Runs all the Account tests, just as the documentation indicates. > {code:xml} > > org.apache.maven.plugins > maven-surefire-plugin > ${surefire.version} > > > org.apache.maven.surefire > surefire-junit47 > ${surefire.version} > > > > true > > *Account* > > 1 > > > > default-test > test > > test > > > > > {code} > *pom config 2: Specifically include Account tests, by pattern* > Runs all the Account and Product tests, just as the documentation indicates. > {code:xml} > > org.apache.maven.plugins > maven-surefire-plugin > ${surefire.version} > > > org.apache.maven.surefire > surefire-junit47 > ${surefire.version} > > > > true > > *Account* > *Product* > > 1 > > > > default-test > tes
[jira] [Commented] (SUREFIRE-1676) surefire-junit47 is not running JUnit4 tests
[ https://issues.apache.org/jira/browse/SUREFIRE-1676?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16885525#comment-16885525 ] Tibor Digana commented on SUREFIRE-1676: Why {{single-test.xml}} and not the {{pom.xml}} I have suspicion that your project observed or override the plugin version to lower version of Surefire. It can be confirmed by generating effective POM on the console and there you will see all project POMs. Select yours and see the version of Surefire: https://maven.apache.org/plugins/maven-help-plugin/effective-pom-mojo.html > surefire-junit47 is not running JUnit4 tests > > > Key: SUREFIRE-1676 > URL: https://issues.apache.org/jira/browse/SUREFIRE-1676 > Project: Maven Surefire > Issue Type: Bug > Components: Maven Surefire Plugin >Affects Versions: 3.0.0-M3 > Environment: Windows 10 and Centos 7 behave the same. > java 1.8.161 >Reporter: Bobby Erwin >Priority: Major > Attachments: mvn -X output2.txt, mvn-dependency-tree.log > > > In a maven project with lots of JUnit 4 tests, surefire-junit47 is not > executing the tests. > There are no testng tests in this project, and there is no testng in the pom. > But this project has a dependency on another project that does have testng in > the pom. You can see it import testng in the mvn -X output, attached. > With testng on the classpath, surefire tries to execute tests through testng. > So we're configuring our test execution based on this page: > https://maven.apache.org/surefire/maven-surefire-plugin/examples/testng.html > For reference sake, here is the documentation I'm working > from:[https://maven.apache.org/surefire/maven-surefire-plugin/examples/inclusion-exclusion.html] > Curiously enough, it appears to find the test classes, but doesn't execute > the methods. That is, if processes all the static fields and @Parameterized > methods, but it doesn't execute any @Test methods. > Here are a couple of pom configurations that show the problem. > Given this test class organization: > {code:java} > - src/main/test/ >- com.mycomp.qc.core.account > - CopyAccountTests.java > - CreateAccountTests.java > - DeleteAccountTests.java > - ListAccountTests.java > - ReadAccountTests.java > - UpdateAccountTests.java >- com.mycomp.qc.core.product > - CopyProductTests.java > - CreateProductTests.java > - DeleteProductTests.java > - ListProductTests.java > - ReadProductTests.java > - UpdateProductTests.java >- . and 300 more packages .{code} > > And given this test class structure: > {code:java} > package com.mycomp.qc.core.account; > import org.junit.Assert; > import org.junit.Test; > and more > public class CopyAccountTests { > @Test > public void copyAccount1() { > Assert.assertTrue("pass", true); > } > @Test > public void copyAccount2() { > Assert.assertTrue("fail", false); > } > and more > }{code} > > *pom config 1: Specifically include Account tests, by pattern* > Runs all the Account tests, just as the documentation indicates. > {code:xml} > > org.apache.maven.plugins > maven-surefire-plugin > ${surefire.version} > > > org.apache.maven.surefire > surefire-junit47 > ${surefire.version} > > > > true > > *Account* > > 1 > > > > default-test > test > > test > > > > > {code} > *pom config 2: Specifically include Account tests, by pattern* > Runs all the Account and Product tests, just as the documentation indicates. > {code:xml} > > org.apache.maven.plugins > maven-surefire-plugin > ${surefire.version} > > > org.apache.maven.surefire > surefire-junit47 > ${surefire.version} > > > > true > > *Account* > *Product* > > 1 > > > > default-test > test > > test > > > > > {code} > *pom config 3: Include all tests, based on default surefire* > Finds and initializes test classes, but does not execute any @Test methods. > {code:xml} > > org.apache.maven.plugins > maven-surefire-plugin > ${surefire.version} > > > org.apache.maven.surefire > surefire-junit47 > ${surefire.version} > > > > true > 1 > > > > default-test > test > > test >
[jira] [Created] (MNGSITE-373) Issue Tracker link is not working - Page Not Found
Waqas Ahmed created MNGSITE-373: --- Summary: Issue Tracker link is not working - Page Not Found Key: MNGSITE-373 URL: https://issues.apache.org/jira/browse/MNGSITE-373 Project: Maven Project Web Site Issue Type: Bug Reporter: Waqas Ahmed Attachments: image-2019-07-15-15-48-45-178.png The link given in the description(usage) of "Apache Maven Shade Plugin" is not working. URL: [https://maven.apache.org/plugins/maven-shade-plugin/] Page Not Found link: [https://maven.apache.org/plugins/maven-shade-plugin/issue-tracking.html] !image-2019-07-15-15-48-45-178.png! -- This message was sent by Atlassian JIRA (v7.6.14#76016)
[jira] [Commented] (SUREFIRE-1676) surefire-junit47 is not running JUnit4 tests
[ https://issues.apache.org/jira/browse/SUREFIRE-1676?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16885570#comment-16885570 ] Bobby Erwin commented on SUREFIRE-1676: --- Yes, I'm running with @RunWith(Parameterized.class). When I say it runs the parameters, I mean it runs all the @Parameters public static methods. I assume that means that it did find the classes, but for some reason not the @Test methods within I do have many test classes with no @RunWith. Those are not getting picked up at all. We are trying to implement surefire-junit47, and single-test.xml is my testbench for that. My normal pom.xml is running surefire-junit4 for my nightly builds, which I can't interrupt until junit47 is working. Attaching my effective pom. It does show surefire-junit47. Seems odd that it's scope is 'compile' rather than 'test'. > surefire-junit47 is not running JUnit4 tests > > > Key: SUREFIRE-1676 > URL: https://issues.apache.org/jira/browse/SUREFIRE-1676 > Project: Maven Surefire > Issue Type: Bug > Components: Maven Surefire Plugin >Affects Versions: 3.0.0-M3 > Environment: Windows 10 and Centos 7 behave the same. > java 1.8.161 >Reporter: Bobby Erwin >Priority: Major > Attachments: mvn -X output2.txt, mvn-dependency-tree.log > > > In a maven project with lots of JUnit 4 tests, surefire-junit47 is not > executing the tests. > There are no testng tests in this project, and there is no testng in the pom. > But this project has a dependency on another project that does have testng in > the pom. You can see it import testng in the mvn -X output, attached. > With testng on the classpath, surefire tries to execute tests through testng. > So we're configuring our test execution based on this page: > https://maven.apache.org/surefire/maven-surefire-plugin/examples/testng.html > For reference sake, here is the documentation I'm working > from:[https://maven.apache.org/surefire/maven-surefire-plugin/examples/inclusion-exclusion.html] > Curiously enough, it appears to find the test classes, but doesn't execute > the methods. That is, if processes all the static fields and @Parameterized > methods, but it doesn't execute any @Test methods. > Here are a couple of pom configurations that show the problem. > Given this test class organization: > {code:java} > - src/main/test/ >- com.mycomp.qc.core.account > - CopyAccountTests.java > - CreateAccountTests.java > - DeleteAccountTests.java > - ListAccountTests.java > - ReadAccountTests.java > - UpdateAccountTests.java >- com.mycomp.qc.core.product > - CopyProductTests.java > - CreateProductTests.java > - DeleteProductTests.java > - ListProductTests.java > - ReadProductTests.java > - UpdateProductTests.java >- . and 300 more packages .{code} > > And given this test class structure: > {code:java} > package com.mycomp.qc.core.account; > import org.junit.Assert; > import org.junit.Test; > and more > public class CopyAccountTests { > @Test > public void copyAccount1() { > Assert.assertTrue("pass", true); > } > @Test > public void copyAccount2() { > Assert.assertTrue("fail", false); > } > and more > }{code} > > *pom config 1: Specifically include Account tests, by pattern* > Runs all the Account tests, just as the documentation indicates. > {code:xml} > > org.apache.maven.plugins > maven-surefire-plugin > ${surefire.version} > > > org.apache.maven.surefire > surefire-junit47 > ${surefire.version} > > > > true > > *Account* > > 1 > > > > default-test > test > > test > > > > > {code} > *pom config 2: Specifically include Account tests, by pattern* > Runs all the Account and Product tests, just as the documentation indicates. > {code:xml} > > org.apache.maven.plugins > maven-surefire-plugin > ${surefire.version} > > > org.apache.maven.surefire > surefire-junit47 > ${surefire.version} > > > > true > > *Account* > *Product* > > 1 > > > > default-test > test > > test > > > > > {code} > *pom config 3: Include all tests, based on default surefire* > Finds and initializes test classes, but does not execute any @Test methods. > {code:xml} > > org.apache.maven.plugins > maven-surefire-plugin > ${surefire.version}
[jira] [Updated] (SUREFIRE-1676) surefire-junit47 is not running JUnit4 tests
[ https://issues.apache.org/jira/browse/SUREFIRE-1676?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Bobby Erwin updated SUREFIRE-1676: -- Attachment: v15-effective-pom-01.xml > surefire-junit47 is not running JUnit4 tests > > > Key: SUREFIRE-1676 > URL: https://issues.apache.org/jira/browse/SUREFIRE-1676 > Project: Maven Surefire > Issue Type: Bug > Components: Maven Surefire Plugin >Affects Versions: 3.0.0-M3 > Environment: Windows 10 and Centos 7 behave the same. > java 1.8.161 >Reporter: Bobby Erwin >Priority: Major > Attachments: mvn -X output2.txt, mvn-dependency-tree.log, > v15-effective-pom-01.xml > > > In a maven project with lots of JUnit 4 tests, surefire-junit47 is not > executing the tests. > There are no testng tests in this project, and there is no testng in the pom. > But this project has a dependency on another project that does have testng in > the pom. You can see it import testng in the mvn -X output, attached. > With testng on the classpath, surefire tries to execute tests through testng. > So we're configuring our test execution based on this page: > https://maven.apache.org/surefire/maven-surefire-plugin/examples/testng.html > For reference sake, here is the documentation I'm working > from:[https://maven.apache.org/surefire/maven-surefire-plugin/examples/inclusion-exclusion.html] > Curiously enough, it appears to find the test classes, but doesn't execute > the methods. That is, if processes all the static fields and @Parameterized > methods, but it doesn't execute any @Test methods. > Here are a couple of pom configurations that show the problem. > Given this test class organization: > {code:java} > - src/main/test/ >- com.mycomp.qc.core.account > - CopyAccountTests.java > - CreateAccountTests.java > - DeleteAccountTests.java > - ListAccountTests.java > - ReadAccountTests.java > - UpdateAccountTests.java >- com.mycomp.qc.core.product > - CopyProductTests.java > - CreateProductTests.java > - DeleteProductTests.java > - ListProductTests.java > - ReadProductTests.java > - UpdateProductTests.java >- . and 300 more packages .{code} > > And given this test class structure: > {code:java} > package com.mycomp.qc.core.account; > import org.junit.Assert; > import org.junit.Test; > and more > public class CopyAccountTests { > @Test > public void copyAccount1() { > Assert.assertTrue("pass", true); > } > @Test > public void copyAccount2() { > Assert.assertTrue("fail", false); > } > and more > }{code} > > *pom config 1: Specifically include Account tests, by pattern* > Runs all the Account tests, just as the documentation indicates. > {code:xml} > > org.apache.maven.plugins > maven-surefire-plugin > ${surefire.version} > > > org.apache.maven.surefire > surefire-junit47 > ${surefire.version} > > > > true > > *Account* > > 1 > > > > default-test > test > > test > > > > > {code} > *pom config 2: Specifically include Account tests, by pattern* > Runs all the Account and Product tests, just as the documentation indicates. > {code:xml} > > org.apache.maven.plugins > maven-surefire-plugin > ${surefire.version} > > > org.apache.maven.surefire > surefire-junit47 > ${surefire.version} > > > > true > > *Account* > *Product* > > 1 > > > > default-test > test > > test > > > > > {code} > *pom config 3: Include all tests, based on default surefire* > Finds and initializes test classes, but does not execute any @Test methods. > {code:xml} > > org.apache.maven.plugins > maven-surefire-plugin > ${surefire.version} > > > org.apache.maven.surefire > surefire-junit47 > ${surefire.version} > > > > true > 1 > > > > default-test > test > > test > > > > > {code} > *pom config 4: Include all tests, by pattern* > Finds and initializes test classes, but does not execute any @Test methods. > {code:xml} > > org.apache.maven.plugins > maven-surefire-plugin > ${surefire.version} > > > org.apache.maven.surefire > surefire-junit47 > ${surefire.v
[jira] [Comment Edited] (SUREFIRE-1676) surefire-junit47 is not running JUnit4 tests
[ https://issues.apache.org/jira/browse/SUREFIRE-1676?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16885570#comment-16885570 ] Bobby Erwin edited comment on SUREFIRE-1676 at 7/15/19 8:18 PM: Yes, I'm running with @RunWith(Parameterized.class). When I say it runs the parameters, I mean it runs all the @Parameters public static methods. I assume that means that it did find the classes, but for some reason not the @Test methods within I do have many test classes with no @RunWith. Those are not getting picked up at all. We are trying to implement surefire-junit47, and single-test.xml is my testbench for that. My normal pom.xml is running surefire-junit4 for my nightly builds, which I can't interrupt until junit47 is working. Attaching my effective pom. It does show surefire-junit47. Seems odd that it's scope is 'compile' rather than 'test'. was (Author: bobanahalf): Yes, I'm running with @RunWith(Parameterized.class). When I say it runs the parameters, I mean it runs all the @Parameters public static methods. I assume that means that it did find the classes, but for some reason not the @Test methods within I do have many test classes with no @RunWith. Those are not getting picked up at all. We are trying to implement surefire-junit47, and single-test.xml is my testbench for that. My normal pom.xml is running surefire-junit4 for my nightly builds, which I can't interrupt until junit47 is working. Attaching my effective pom. It does show surefire-junit47. Seems odd that it's scope is 'compile' rather than 'test'. > surefire-junit47 is not running JUnit4 tests > > > Key: SUREFIRE-1676 > URL: https://issues.apache.org/jira/browse/SUREFIRE-1676 > Project: Maven Surefire > Issue Type: Bug > Components: Maven Surefire Plugin >Affects Versions: 3.0.0-M3 > Environment: Windows 10 and Centos 7 behave the same. > java 1.8.161 >Reporter: Bobby Erwin >Priority: Major > Attachments: mvn -X output2.txt, mvn-dependency-tree.log, > v15-effective-pom-01.xml > > > In a maven project with lots of JUnit 4 tests, surefire-junit47 is not > executing the tests. > There are no testng tests in this project, and there is no testng in the pom. > But this project has a dependency on another project that does have testng in > the pom. You can see it import testng in the mvn -X output, attached. > With testng on the classpath, surefire tries to execute tests through testng. > So we're configuring our test execution based on this page: > https://maven.apache.org/surefire/maven-surefire-plugin/examples/testng.html > For reference sake, here is the documentation I'm working > from:[https://maven.apache.org/surefire/maven-surefire-plugin/examples/inclusion-exclusion.html] > Curiously enough, it appears to find the test classes, but doesn't execute > the methods. That is, if processes all the static fields and @Parameterized > methods, but it doesn't execute any @Test methods. > Here are a couple of pom configurations that show the problem. > Given this test class organization: > {code:java} > - src/main/test/ >- com.mycomp.qc.core.account > - CopyAccountTests.java > - CreateAccountTests.java > - DeleteAccountTests.java > - ListAccountTests.java > - ReadAccountTests.java > - UpdateAccountTests.java >- com.mycomp.qc.core.product > - CopyProductTests.java > - CreateProductTests.java > - DeleteProductTests.java > - ListProductTests.java > - ReadProductTests.java > - UpdateProductTests.java >- . and 300 more packages .{code} > > And given this test class structure: > {code:java} > package com.mycomp.qc.core.account; > import org.junit.Assert; > import org.junit.Test; > and more > public class CopyAccountTests { > @Test > public void copyAccount1() { > Assert.assertTrue("pass", true); > } > @Test > public void copyAccount2() { > Assert.assertTrue("fail", false); > } > and more > }{code} > > *pom config 1: Specifically include Account tests, by pattern* > Runs all the Account tests, just as the documentation indicates. > {code:xml} > > org.apache.maven.plugins > maven-surefire-plugin > ${surefire.version} > > > org.apache.maven.surefire > surefire-junit47 > ${surefire.version} > > > > true > > *Account* > > 1 > > > > default-test > test > > test > > > > > {code} > *pom config 2: Specifically include Account tests, by pattern* > Runs all the Account and Product tests,
[jira] [Commented] (MNG-6710) Stackoverflow while compiling Java Sources, but works after renaming project directory
[ https://issues.apache.org/jira/browse/MNG-6710?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16885572#comment-16885572 ] Michael Osipov commented on MNG-6710: - Provide a sample project please. I have the feeling that the command line passed via PowerShell is too long to be processed. > Stackoverflow while compiling Java Sources, but works after renaming project > directory > -- > > Key: MNG-6710 > URL: https://issues.apache.org/jira/browse/MNG-6710 > Project: Maven > Issue Type: Bug >Affects Versions: 3.6.1 > Environment: The problem occurs with Windows 10 and also with Windows > 7. >Reporter: Markus Bader >Priority: Major > Attachments: build.log > > > Me and one of my colleagues have following problem (others do not): We want > to build a maven project, but "mvn clean install" ends up in a stackoverflow > error. But after renaming the project directory, it works. Also after > renaming the name of the parent directory and leaving the name of the project > directory by its original value, compilation is possible. > I also tried changing the artifactId so that it doesn't match the folder > name. Result: stackoverflow. > To make it more strange: I tried to reduce the used Java classes for possibly > identifying a class to be responsible for this phenomenon. Therefor I deleted > a class named "MathParser" and after that compilation was possible. So I > analysed the content of the class and found out, that the stackoverflow error > occurs even if the class ist nearly empty. With following content I can > reproduce the error: > > {code:java} > package some.anonymised.package; > public class MathParser { > private void doSomething(String func) throws Exception { > throw new Exception ("function '" + func + "' is not defined"); > } > } {code} > With an empty method body, the build works fine. > I attached the log created with debug option activated (with reduced number > of classes and reduced content of MathParser). For anonymisation purposes I > replaced the name of some directories, packages etc. by "x". -- This message was sent by Atlassian JIRA (v7.6.14#76016)
[jira] [Commented] (SUREFIRE-1676) surefire-junit47 is not running JUnit4 tests
[ https://issues.apache.org/jira/browse/SUREFIRE-1676?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16885579#comment-16885579 ] Tibor Digana commented on SUREFIRE-1676: See about parameterized tests here https://maven.apache.org/surefire/maven-surefire-plugin/examples/single-test.html > surefire-junit47 is not running JUnit4 tests > > > Key: SUREFIRE-1676 > URL: https://issues.apache.org/jira/browse/SUREFIRE-1676 > Project: Maven Surefire > Issue Type: Bug > Components: Maven Surefire Plugin >Affects Versions: 3.0.0-M3 > Environment: Windows 10 and Centos 7 behave the same. > java 1.8.161 >Reporter: Bobby Erwin >Priority: Major > Attachments: mvn -X output2.txt, mvn-dependency-tree.log, > v15-effective-pom-01.xml > > > In a maven project with lots of JUnit 4 tests, surefire-junit47 is not > executing the tests. > There are no testng tests in this project, and there is no testng in the pom. > But this project has a dependency on another project that does have testng in > the pom. You can see it import testng in the mvn -X output, attached. > With testng on the classpath, surefire tries to execute tests through testng. > So we're configuring our test execution based on this page: > https://maven.apache.org/surefire/maven-surefire-plugin/examples/testng.html > For reference sake, here is the documentation I'm working > from:[https://maven.apache.org/surefire/maven-surefire-plugin/examples/inclusion-exclusion.html] > Curiously enough, it appears to find the test classes, but doesn't execute > the methods. That is, if processes all the static fields and @Parameterized > methods, but it doesn't execute any @Test methods. > Here are a couple of pom configurations that show the problem. > Given this test class organization: > {code:java} > - src/main/test/ >- com.mycomp.qc.core.account > - CopyAccountTests.java > - CreateAccountTests.java > - DeleteAccountTests.java > - ListAccountTests.java > - ReadAccountTests.java > - UpdateAccountTests.java >- com.mycomp.qc.core.product > - CopyProductTests.java > - CreateProductTests.java > - DeleteProductTests.java > - ListProductTests.java > - ReadProductTests.java > - UpdateProductTests.java >- . and 300 more packages .{code} > > And given this test class structure: > {code:java} > package com.mycomp.qc.core.account; > import org.junit.Assert; > import org.junit.Test; > and more > public class CopyAccountTests { > @Test > public void copyAccount1() { > Assert.assertTrue("pass", true); > } > @Test > public void copyAccount2() { > Assert.assertTrue("fail", false); > } > and more > }{code} > > *pom config 1: Specifically include Account tests, by pattern* > Runs all the Account tests, just as the documentation indicates. > {code:xml} > > org.apache.maven.plugins > maven-surefire-plugin > ${surefire.version} > > > org.apache.maven.surefire > surefire-junit47 > ${surefire.version} > > > > true > > *Account* > > 1 > > > > default-test > test > > test > > > > > {code} > *pom config 2: Specifically include Account tests, by pattern* > Runs all the Account and Product tests, just as the documentation indicates. > {code:xml} > > org.apache.maven.plugins > maven-surefire-plugin > ${surefire.version} > > > org.apache.maven.surefire > surefire-junit47 > ${surefire.version} > > > > true > > *Account* > *Product* > > 1 > > > > default-test > test > > test > > > > > {code} > *pom config 3: Include all tests, based on default surefire* > Finds and initializes test classes, but does not execute any @Test methods. > {code:xml} > > org.apache.maven.plugins > maven-surefire-plugin > ${surefire.version} > > > org.apache.maven.surefire > surefire-junit47 > ${surefire.version} > > > > true > 1 > > > > default-test > test > > test > > > > > {code} > *pom config 4: Include all tests, by pattern* > Finds and initializes test classes, but does not execute any @Test methods. > {code:xml} > > org.apache.maven.plugins > maven-surefire-plugin >
[jira] [Commented] (MRESOLVER-7) Download dependency POMs in parallel
[ https://issues.apache.org/jira/browse/MRESOLVER-7?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16885618#comment-16885618 ] Tibor Digana commented on MRESOLVER-7: -- [~hwellmann] We have to revert this feature in resolver and resolver:1.4.0 in Maven. It should be reviewed in a separate branch. As an explanation, our Maven builds started failing after resolver:1.4.0 has been applied. To be unbiased and fully logical, I investigated the issue and the feature on ASF Slack. It was me who found several problems in the code, root cause of hanging Maven and deadlock of thread-resources starvation, problems with thread-unsafe classes, overrided objects across threads, one unclear part in the algorithm. And I also found that the algorithm crashed 11 unit tests in {{maven-resolver}} after i removed ThreadPoolExecutor (in a playgrounded non-master branch) and thus made it single-threaded. I am sorry and not glad to say these things, but I would like you and ASF Maven to make code review of this feature, where every question and line must be clarified. Are you open for attending in such code review? I may copy paste the text from Slack regarding our findings. But currently we are responsible to solve our internal problems with failing builds. The Jenkins builds have been failing over one month! > Download dependency POMs in parallel > > > Key: MRESOLVER-7 > URL: https://issues.apache.org/jira/browse/MRESOLVER-7 > Project: Maven Resolver > Issue Type: Improvement >Affects Versions: Aether 1.0.2 >Reporter: Harald Wellmann >Assignee: Michael Osipov >Priority: Major > Fix For: 1.4.0 > > Time Spent: 40m > Remaining Estimate: 0h > > h3. Background > When building a project with dependencies not yet available in the local > repository, I noticed that Maven 3.3.9/Aether 1.0.2 first downloads the > dependency POMs _sequentially_ and then proceeds downloading the dependency > JARs with up to 5 threads _in parallel_. > Due to this, when first building a project with a large number of > dependencies, downloading a large number of small POMs may take a lot longer > than downloading the much larger JARs, or even longer than building the > project itself, especially when a repository manager is used which increases > the download latency. > h3. Enhancement > Download POMs of (transitive) dependencies in parallel to significantly speed > up initial builds of large projects. -- This message was sent by Atlassian JIRA (v7.6.14#76016)