Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NullpointerException using use-dep-version 2.12.0 #673

Closed
franboragina opened this issue Sep 7, 2022 · 6 comments · Fixed by #675
Closed

NullpointerException using use-dep-version 2.12.0 #673

franboragina opened this issue Sep 7, 2022 · 6 comments · Fixed by #675
Labels
Milestone

Comments

@franboragina
Copy link

franboragina commented Sep 7, 2022

Hi all,

One of our Jenkins build uses:
mvn versions:use-dep-version -DdepVersion=DEVELOP-SNAPSHOT '-Dincludes=com.jumbotours*:::JET*-SNAPSHOT'

Since today 07/09/22 (dd/mm/yy) using 2.12.0 it throws an ugly NullpointerException:

[ERROR] Failed to execute goal org.codehaus.mojo:versions-maven-plugin:2.12.0:use-dep-version (default-cli) on project mrsmodel: Execution default-cli of goal org.codehaus.mojo:versions-maven-plugin:2.12.0:use-dep-version failed.: NullPointerException -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.codehaus.mojo:versions-maven-plugin:2.12.0:use-dep-version (default-cli) on project mrsmodel: Execution default-cli of goal org.codehaus.mojo:versions-maven-plugin:2.12.0:use-dep-version failed.
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2 (MojoExecutor.java:375)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:351)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:215)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:171)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:163)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:294)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:960)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:293)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:196)
    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:282)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)
Caused by: org.apache.maven.plugin.PluginExecutionException: Execution default-cli of goal org.codehaus.mojo:versions-maven-plugin:2.12.0:use-dep-version failed.
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:148)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2 (MojoExecutor.java:370)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:351)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:215)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:171)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:163)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:294)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:960)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:293)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:196)
    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:282)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)
Caused by: java.lang.NullPointerException
    at org.apache.maven.shared.artifact.filter.PatternIncludesArtifactFilter.match (PatternIncludesArtifactFilter.java:653)
    at org.apache.maven.shared.artifact.filter.PatternIncludesArtifactFilter.access$500 (PatternIncludesArtifactFilter.java:47)
    at org.apache.maven.shared.artifact.filter.PatternIncludesArtifactFilter$CoordinateMatchingPattern.matches (PatternIncludesArtifactFilter.java:593)
    at org.apache.maven.shared.artifact.filter.PatternIncludesArtifactFilter$AndPattern.matches (PatternIncludesArtifactFilter.java:532)
    at org.apache.maven.shared.artifact.filter.PatternIncludesArtifactFilter.match (PatternIncludesArtifactFilter.java:148)
    at org.apache.maven.shared.artifact.filter.PatternIncludesArtifactFilter.patternMatches (PatternIncludesArtifactFilter.java:117)
    at org.apache.maven.shared.artifact.filter.PatternIncludesArtifactFilter.include (PatternIncludesArtifactFilter.java:105)
    at org.codehaus.mojo.versions.AbstractVersionsDependencyUpdaterMojo.isIncluded (AbstractVersionsDependencyUpdaterMojo.java:372)
    at org.codehaus.mojo.versions.UseDepVersionMojo.useDepVersion (UseDepVersionMojo.java:122)
    at org.codehaus.mojo.versions.UseDepVersionMojo.update (UseDepVersionMojo.java:94)
    at org.codehaus.mojo.versions.AbstractVersionsUpdaterMojo.process (AbstractVersionsUpdaterMojo.java:360)
    at org.codehaus.mojo.versions.AbstractVersionsUpdaterMojo.execute (AbstractVersionsUpdaterMojo.java:273)
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:137)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2 (MojoExecutor.java:370)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:351)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:215)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:171)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:163)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:294)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:960)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:293)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:196)
    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:282)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)
[ERROR] 
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginExecutionException
[ERROR] 
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR]   mvn <args> -rf :mrsmodel

Same behaviour with Maven 3.6.3 and 3.8.6.

My workaround for now is to force using version 2.11.0 and everything works fine again

Please feel free to modify / prettify my post

Thank you for your support

@jarmoniuk
Copy link
Contributor

Could you please provide a sample pom.xml with which this problem is reproducible?

@franboragina
Copy link
Author

Here is a simplified pom.xml reproducing the Nullpointer locally, I hope it work for you.

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>

	<groupId>com.jumbotours</groupId>
	<artifactId>commons-business-model</artifactId>
	<version>DEVELOP-SNAPSHOT</version>

	<dependencies>
		<dependency>
			<groupId>com.jumbotours</groupId>
			<artifactId>jet-logic-version</artifactId>
			<version>22.09.21</version>
		</dependency>
	</dependencies>

</project>

image

Executing with 2.11.0...

image

@jarmoniuk
Copy link
Contributor

Working on it.

Here's a branch with an it as well as a unit test (UseDepVersionMojoTestCase), both reproducing it.

https://github.com/ajarmoniuk/versions-maven-plugin/tree/issue-673-test-case

@jarmoniuk
Copy link
Contributor

Culprit: dependency-bot bumping org.apache.maven.shared:maven-common-artifact-filters to 3.3.1.

@jarmoniuk
Copy link
Contributor

On the other hand, I think filling in, even default values, would be wrong and would not represent the actual model anymore. I'll fill a bug in maven-common-artifact-filters.

Downgrading to 3.3.0.

jarmoniuk added a commit to jarmoniuk/versions-maven-plugin that referenced this issue Sep 7, 2022
…esArtifactFilter expecting a non-null classifier when using wildcards
@slawekjaranowski slawekjaranowski added this to the next-release milestone Sep 7, 2022
slawekjaranowski pushed a commit that referenced this issue Sep 7, 2022
…ctFilter expecting a non-null classifier when using wildcards
@jarmoniuk
Copy link
Contributor

jarmoniuk commented Sep 8, 2022

Created MSHARED-1130

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
3 participants