I'm trying to aggregate the tests results from multiple projects. Each of those projects have their own pom and run fine. There is no project really aggregating them all so I figured I could run the goal without a pom.
The aggregator mojo has the requiresProject property set to false:
If I understand things correctly this implies that the goal can be executed without having a pom file. However, this fails with a NullPointerException from:
[ERROR] Failed to execute goal net.serenity-bdd.maven.plugins:serenity-maven-plugin:2.6.0:aggregate (default-cli) on project standalone-pom: Execution default-cli of goal net.serenity-bdd.maven.plugins:serenity-maven-plugin:2.6.0:aggregate failed. NullPointerException -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal net.serenity-bdd.maven.plugins:serenity-maven-plugin:2.6.0:aggregate (default-cli) on project standalone-pom: Execution default-cli of goal net.serenity-bdd.maven.plugins:serenity-maven-plugin:2.6.0:aggregate failed.
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:212)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)
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:307)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:106)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:863)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:288)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:199)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
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-cli of goal net.serenity-bdd.maven.plugins:serenity-maven-plugin:2.6.0:aggregate failed.
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:145)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:207)
... 20 more
Caused by: java.lang.NullPointerException
at net.serenitybdd.maven.plugins.MavenProjectHelper.propagateBuildDir(MavenProjectHelper.java:25)
at net.serenitybdd.maven.plugins.SerenityAggregatorMojo.prepareExecution(SerenityAggregatorMojo.java:121)
at net.serenitybdd.maven.plugins.SerenityAggregatorMojo.execute(SerenityAggregatorMojo.java:190)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134)
... 21 more
If this is not meant to work without a pom should requiresProject be true?
I'm trying to aggregate the tests results from multiple projects. Each of those projects have their own pom and run fine. There is no project really aggregating them all so I figured I could run the goal without a pom.
The aggregator mojo has the requiresProject property set to false:
https://github.com/serenity-bdd/serenity-maven-plugin/blob/b8e1273aa224604f01f6d2b0e9d611291a5a21ad/src/main/java/net/serenitybdd/maven/plugins/SerenityAggregatorMojo.java#L33
If I understand things correctly this implies that the goal can be executed without having a pom file. However, this fails with a NullPointerException from:
https://github.com/serenity-bdd/serenity-maven-plugin/blob/b8e1273aa224604f01f6d2b0e9d611291a5a21ad/src/main/java/net/serenitybdd/maven/plugins/MavenProjectHelper.java#L25.
I'm executing the goal like this
mvn -B -Dserenity.outputDirectory=target/site/serenity -X net.serenity-bdd.maven.plugins:serenity-maven-plugin:aggregate
The full error is this:
If this is not meant to work without a pom should requiresProject be true?