[jira] Commented: (MRELEASE-318) Release plugin throws NullPointerException when using version range for dependency
[ http://jira.codehaus.org/browse/MRELEASE-318?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=257983#action_257983 ] Elliot Metsger commented on MRELEASE-318: - I'm still getting an NPE with Maven 2.2.1 and Release Plugin 2.1. Relavent POM snip: commons-codec commons-codec [1.2,) ... Output: mvn org.apache.maven.plugins:maven-release-plugin:2.1:prepare -DreleaseVersion=1.0.1-y2pilot -DdevelopmentVersion=1.0.2-y2pilot-SNAPSHOT -Dtag=1.0.1-y2pilot -DdryRun=true [INFO] Scanning for projects... [INFO] Reactor build order: [INFO] common-services [INFO] dcs-id-api [INFO] dcs-id-impl [INFO] dcs-notify-api [INFO] dcs-notify-impl [INFO] Common DCS utilities [INFO] dcs-id-impl-hibernate [INFO] [INFO] Building common-services [INFO]task-segment: [org.apache.maven.plugins:maven-release-plugin:2.1:prepare] (aggregator-style) [INFO] [INFO] [release:prepare {execution: default-cli}] [INFO] Verifying that there are no local modifications... [INFO] ignoring changes on: pom.xml.next, release.properties, pom.xml.releaseBackup, pom.xml.backup, pom.xml.branch, pom.xml.tag [INFO] Executing: /bin/sh -c cd /Users/esm/dc-svn/common-services/branches/y2pilot && svn --non-interactive status [INFO] Working directory: /Users/esm/dc-svn/common-services/branches/y2pilot [INFO] Checking dependencies and plugins for snapshots ... There are still some remaining snapshot dependencies. : Do you want to resolve them now? (yes/no) no: : yes Dependency type to resolve,: specify the selection number ( 0:All 1:Project Dependencies 2:Plugins 3:Reports 4:Extensions ): (0/1/2/3) 1: : Dependency 'org.dataconservancy:project-pom' is a snapshot (1.0.1-y2pilot-SNAPSHOT) : Which release version should it be set to? 1.0.1-y2pilot: : What version should the dependency be reset to for development? 1.0.1-y2pilot: : 1.0.2-y2pilot-SNAPSHOT [INFO] [ERROR] FATAL ERROR [INFO] [INFO] version was null for commons-codec:commons-codec [INFO] [INFO] Trace java.lang.NullPointerException: version was null for commons-codec:commons-codec at org.apache.maven.artifact.DefaultArtifact.getBaseVersion(DefaultArtifact.java:390) at org.apache.maven.artifact.DefaultArtifact.isSnapshot(DefaultArtifact.java:562) at org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.checkArtifact(CheckDependencySnapshotsPhase.java:273) at org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.checkArtifact(CheckDependencySnapshotsPhase.java:252) at org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.checkProject(CheckDependencySnapshotsPhase.java:136) at org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.execute(CheckDependencySnapshotsPhase.java:98) at org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.simulate(CheckDependencySnapshotsPhase.java:290) at org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:199) at org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:140) at org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:103) at org.apache.maven.plugins.release.PrepareReleaseMojo.prepareRelease(PrepareReleaseMojo.java:279) at org.apache.maven.plugins.release.PrepareReleaseMojo.execute(PrepareReleaseMojo.java:237) at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:490) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:694) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:569) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:539) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:387) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:284) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:180) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:328) at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:138) at org.apache.maven.cli.MavenCli.main(MavenCli.java:362) at org.apache.maven.cli.compat.CompatibleMain.main(CompatibleMain.java:60)
[jira] Commented: (MRELEASE-318) Release plugin throws NullPointerException when using version range for dependency
[ http://jira.codehaus.org/browse/MRELEASE-318?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=252187#action_252187 ] Kristoffer Peterhäesel commented on MRELEASE-318: - Yeah. Not working for me in Maven 2.2.1 either. Exact same stack trace as the one from [~mdp] > Release plugin throws NullPointerException when using version range for > dependency > -- > > Key: MRELEASE-318 > URL: http://jira.codehaus.org/browse/MRELEASE-318 > Project: Maven 2.x Release Plugin > Issue Type: Bug > Components: prepare >Affects Versions: 2.0-beta-7 >Reporter: David Hoffer >Assignee: Brett Porter >Priority: Blocker > Fix For: 2.1 > > Attachments: MNG-3351-unittest.patch, MNG-3351.zip, > MNG-3351_dependency_poms.zip, simple-test-case-console-log.txt, > simple-testcase.zip > > > After upgrading to 2.0.8 I find that the release plugin throws NPE if any > dependency uses version range. > I have one dependency with version range [1.0,2.0) the > rest are test scope with fixed version. > Here is the crash stack trace: > java.lang.NullPointerException: version was null for > com.xrite:xrite-colorlib-api > [13:42:05]: at > org.apache.maven.artifact.DefaultArtifact.getBaseVersion(DefaultArtifact.java:362) > [13:42:05]: at > org.apache.maven.artifact.DefaultArtifact.isSnapshot(DefaultArtifact.java:557) > [13:42:05]: at > org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.checkArtifact(CheckDependencySnapshotsPhase.java:252) > [13:42:05]: at > org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.checkProject(CheckDependencySnapshotsPhase.java:138) > [13:42:05]: at > org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.execute(CheckDependencySnapshotsPhase.java:106) > [13:42:05]: at > org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:194) > [13:42:05]: at > org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:131) > [13:42:05]: at > org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:94) > [13:42:05]: at > org.apache.maven.plugins.release.PrepareReleaseMojo.execute(PrepareReleaseMojo.java:127) > [13:42:05]: at > org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:447) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:559) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:513) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:483) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:331) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:228) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:143) > [13:42:05]: at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:333) > [13:42:05]: at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:126) > [13:42:05]: at org.apache.maven.cli.MavenCli.main(MavenCli.java:282) > [13:42:05]: at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > [13:42:05]: at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > [13:42:05]: at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > [13:42:05]: at java.lang.reflect.Method.invoke(Method.java:597) > [13:42:05]: at > org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) > [13:42:05]: at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) > [13:42:05]: at > org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) > [13:42:05]: at org.codehaus.classworlds.Launcher.main(Launcher.java:375) > It seems the reason version is null is that the call to > selectVersionFromNewRangeIfAvailable() assumes that > versionRange.getRecommendedVersion() will always return non-null, else it > sets the version to null! However during the release:prepare phase this is > not true, see the output: > [13:42:04]: [INFO] [release:prepare] > [13:42:04]: [INFO] Verifying that there are no local modifications... > [13:42:04]: [INFO] Executing: svn --non-interactive status > [13:42:04]: [INFO] Working directory: C:\BuildAgent\work\23044d751bcc9843 > [13:42:05]: [INFO] Checking dependencies and plugins for snapshots ... > [13:42:05]: TEST!!! version=null > [13:42:05]: TEST!!! versionRange=[1.0,2.0) > [13:42:05]: TEST!!! getRecommendedVersion=null > TEST!!! Lines are
[jira] Commented: (MRELEASE-318) Release plugin throws NullPointerException when using version range for dependency
[ http://jira.codehaus.org/browse/MRELEASE-318?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=242406#action_242406 ] Michal Politowski commented on MRELEASE-318: It does not look like fixed here neither: mvn org.apache.maven.plugins:maven-release-plugin:2.1:prepare -DdryRun=true [...] java.lang.NullPointerException: version was null for org.mortbay.jetty:jetty at org.apache.maven.artifact.DefaultArtifact.getBaseVersion(DefaultArtifact.java:390) at org.apache.maven.artifact.DefaultArtifact.isSnapshot(DefaultArtifact.java:562) at org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.checkArtifact(CheckDependencySnapshotsPhase.java:273) at org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.checkArtifact(CheckDependencySnapshotsPhase.java:252) at org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.checkProject(CheckDependencySnapshotsPhase.java:136) at org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.execute(CheckDependencySnapshotsPhase.java:98) at org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.simulate(CheckDependencySnapshotsPhase.java:290) at org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:199) at org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:140) at org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:103) at org.apache.maven.plugins.release.PrepareReleaseMojo.prepareRelease(PrepareReleaseMojo.java:279) at org.apache.maven.plugins.release.PrepareReleaseMojo.execute(PrepareReleaseMojo.java:237) [...] > Release plugin throws NullPointerException when using version range for > dependency > -- > > Key: MRELEASE-318 > URL: http://jira.codehaus.org/browse/MRELEASE-318 > Project: Maven 2.x Release Plugin > Issue Type: Bug > Components: prepare >Affects Versions: 2.0-beta-7 >Reporter: David Hoffer >Assignee: Brett Porter >Priority: Blocker > Fix For: 2.1 > > Attachments: MNG-3351-unittest.patch, MNG-3351.zip, > MNG-3351_dependency_poms.zip, simple-test-case-console-log.txt, > simple-testcase.zip > > > After upgrading to 2.0.8 I find that the release plugin throws NPE if any > dependency uses version range. > I have one dependency with version range [1.0,2.0) the > rest are test scope with fixed version. > Here is the crash stack trace: > java.lang.NullPointerException: version was null for > com.xrite:xrite-colorlib-api > [13:42:05]: at > org.apache.maven.artifact.DefaultArtifact.getBaseVersion(DefaultArtifact.java:362) > [13:42:05]: at > org.apache.maven.artifact.DefaultArtifact.isSnapshot(DefaultArtifact.java:557) > [13:42:05]: at > org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.checkArtifact(CheckDependencySnapshotsPhase.java:252) > [13:42:05]: at > org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.checkProject(CheckDependencySnapshotsPhase.java:138) > [13:42:05]: at > org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.execute(CheckDependencySnapshotsPhase.java:106) > [13:42:05]: at > org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:194) > [13:42:05]: at > org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:131) > [13:42:05]: at > org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:94) > [13:42:05]: at > org.apache.maven.plugins.release.PrepareReleaseMojo.execute(PrepareReleaseMojo.java:127) > [13:42:05]: at > org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:447) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:559) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:513) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:483) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:331) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:228) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:143) > [13:42:05]: at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:333) > [13:42:05]: at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:126) > [13:42:05]: at org.apache.maven.cli.Maven
[jira] Commented: (MRELEASE-318) Release plugin throws NullPointerException when using version range for dependency
[ http://jira.codehaus.org/browse/MRELEASE-318?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=240546#action_240546 ] Phillip Hellewell commented on MRELEASE-318: I'm getting this in 2.1 using an exact version number, e.g., [1.2.5]. 2.0-beta-9 works fine. Should I create a new bug or is there a way to re-open this? Migrating to Maven 3 is not an option for us at this time. java.lang.NullPointerException: version was null for ad.3rdparty:boost at org.apache.maven.artifact.DefaultArtifact.getBaseVersion(DefaultArtifact.java:390) at org.apache.maven.artifact.DefaultArtifact.isSnapshot(DefaultArtifact.java:562) at org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.checkArtifact(CheckDependencySnapshotsPhase.java:273) at org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.checkArtifact(CheckDependencySnapshotsPhase.java:252) at org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.checkProject(CheckDependencySnapshotsPhase.java:136) at org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.execute(CheckDependencySnapshotsPhase.java:98) at org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:203) ... > Release plugin throws NullPointerException when using version range for > dependency > -- > > Key: MRELEASE-318 > URL: http://jira.codehaus.org/browse/MRELEASE-318 > Project: Maven 2.x Release Plugin > Issue Type: Bug > Components: prepare >Affects Versions: 2.0-beta-7 >Reporter: David Hoffer >Assignee: Brett Porter >Priority: Blocker > Fix For: 2.1 > > Attachments: MNG-3351-unittest.patch, MNG-3351.zip, > MNG-3351_dependency_poms.zip, simple-test-case-console-log.txt, > simple-testcase.zip > > > After upgrading to 2.0.8 I find that the release plugin throws NPE if any > dependency uses version range. > I have one dependency with version range [1.0,2.0) the > rest are test scope with fixed version. > Here is the crash stack trace: > java.lang.NullPointerException: version was null for > com.xrite:xrite-colorlib-api > [13:42:05]: at > org.apache.maven.artifact.DefaultArtifact.getBaseVersion(DefaultArtifact.java:362) > [13:42:05]: at > org.apache.maven.artifact.DefaultArtifact.isSnapshot(DefaultArtifact.java:557) > [13:42:05]: at > org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.checkArtifact(CheckDependencySnapshotsPhase.java:252) > [13:42:05]: at > org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.checkProject(CheckDependencySnapshotsPhase.java:138) > [13:42:05]: at > org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.execute(CheckDependencySnapshotsPhase.java:106) > [13:42:05]: at > org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:194) > [13:42:05]: at > org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:131) > [13:42:05]: at > org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:94) > [13:42:05]: at > org.apache.maven.plugins.release.PrepareReleaseMojo.execute(PrepareReleaseMojo.java:127) > [13:42:05]: at > org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:447) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:559) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:513) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:483) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:331) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:228) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:143) > [13:42:05]: at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:333) > [13:42:05]: at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:126) > [13:42:05]: at org.apache.maven.cli.MavenCli.main(MavenCli.java:282) > [13:42:05]: at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > [13:42:05]: at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > [13:42:05]: at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > [13:42:05]: at java.lang.reflect.Method.invoke(Method.java:597) > [13:42:05]: at > org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.jav
[jira] Commented: (MRELEASE-318) Release plugin throws NullPointerException when using version range for dependency
[ http://jira.codehaus.org/browse/MRELEASE-318?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=240083#action_240083 ] Michael McCallum commented on MRELEASE-318: --- I managed to get this again on maven 2.1.0 with release plugin 2.1. Works fine on maven 3 however I would recommend upgrading to m3. > Release plugin throws NullPointerException when using version range for > dependency > -- > > Key: MRELEASE-318 > URL: http://jira.codehaus.org/browse/MRELEASE-318 > Project: Maven 2.x Release Plugin > Issue Type: Bug > Components: prepare >Affects Versions: 2.0-beta-7 >Reporter: David Hoffer >Assignee: Brett Porter >Priority: Blocker > Fix For: 2.1 > > Attachments: MNG-3351-unittest.patch, MNG-3351.zip, > MNG-3351_dependency_poms.zip, simple-test-case-console-log.txt, > simple-testcase.zip > > > After upgrading to 2.0.8 I find that the release plugin throws NPE if any > dependency uses version range. > I have one dependency with version range [1.0,2.0) the > rest are test scope with fixed version. > Here is the crash stack trace: > java.lang.NullPointerException: version was null for > com.xrite:xrite-colorlib-api > [13:42:05]: at > org.apache.maven.artifact.DefaultArtifact.getBaseVersion(DefaultArtifact.java:362) > [13:42:05]: at > org.apache.maven.artifact.DefaultArtifact.isSnapshot(DefaultArtifact.java:557) > [13:42:05]: at > org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.checkArtifact(CheckDependencySnapshotsPhase.java:252) > [13:42:05]: at > org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.checkProject(CheckDependencySnapshotsPhase.java:138) > [13:42:05]: at > org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.execute(CheckDependencySnapshotsPhase.java:106) > [13:42:05]: at > org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:194) > [13:42:05]: at > org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:131) > [13:42:05]: at > org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:94) > [13:42:05]: at > org.apache.maven.plugins.release.PrepareReleaseMojo.execute(PrepareReleaseMojo.java:127) > [13:42:05]: at > org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:447) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:559) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:513) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:483) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:331) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:228) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:143) > [13:42:05]: at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:333) > [13:42:05]: at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:126) > [13:42:05]: at org.apache.maven.cli.MavenCli.main(MavenCli.java:282) > [13:42:05]: at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > [13:42:05]: at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > [13:42:05]: at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > [13:42:05]: at java.lang.reflect.Method.invoke(Method.java:597) > [13:42:05]: at > org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) > [13:42:05]: at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) > [13:42:05]: at > org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) > [13:42:05]: at org.codehaus.classworlds.Launcher.main(Launcher.java:375) > It seems the reason version is null is that the call to > selectVersionFromNewRangeIfAvailable() assumes that > versionRange.getRecommendedVersion() will always return non-null, else it > sets the version to null! However during the release:prepare phase this is > not true, see the output: > [13:42:04]: [INFO] [release:prepare] > [13:42:04]: [INFO] Verifying that there are no local modifications... > [13:42:04]: [INFO] Executing: svn --non-interactive status > [13:42:04]: [INFO] Working directory: C:\BuildAgent\work\23044d751bcc9843 > [13:42:05]: [INFO] Checking dependencies and plugins for snapshots ... > [13:42:05]: TEST!!! version=null > [13:42:05]: TEST!!! versionRange=[1.0,2.0) > [13:42:05]: TEST!!! getRecommendedVersio
[jira] Commented: (MRELEASE-318) Release plugin throws NullPointerException when using version range for dependency
[ http://jira.codehaus.org/browse/MRELEASE-318?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=235965#action_235965 ] Brett Porter commented on MRELEASE-318: --- Arik, I meant the reference to the MNG-3092 issue which is still being debated. > Release plugin throws NullPointerException when using version range for > dependency > -- > > Key: MRELEASE-318 > URL: http://jira.codehaus.org/browse/MRELEASE-318 > Project: Maven 2.x Release Plugin > Issue Type: Bug > Components: prepare >Affects Versions: 2.0-beta-7 >Reporter: David Hoffer >Assignee: Brett Porter >Priority: Blocker > Fix For: 2.1 > > Attachments: MNG-3351-unittest.patch, MNG-3351.zip, > MNG-3351_dependency_poms.zip, simple-test-case-console-log.txt, > simple-testcase.zip > > > After upgrading to 2.0.8 I find that the release plugin throws NPE if any > dependency uses version range. > I have one dependency with version range [1.0,2.0) the > rest are test scope with fixed version. > Here is the crash stack trace: > java.lang.NullPointerException: version was null for > com.xrite:xrite-colorlib-api > [13:42:05]: at > org.apache.maven.artifact.DefaultArtifact.getBaseVersion(DefaultArtifact.java:362) > [13:42:05]: at > org.apache.maven.artifact.DefaultArtifact.isSnapshot(DefaultArtifact.java:557) > [13:42:05]: at > org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.checkArtifact(CheckDependencySnapshotsPhase.java:252) > [13:42:05]: at > org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.checkProject(CheckDependencySnapshotsPhase.java:138) > [13:42:05]: at > org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.execute(CheckDependencySnapshotsPhase.java:106) > [13:42:05]: at > org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:194) > [13:42:05]: at > org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:131) > [13:42:05]: at > org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:94) > [13:42:05]: at > org.apache.maven.plugins.release.PrepareReleaseMojo.execute(PrepareReleaseMojo.java:127) > [13:42:05]: at > org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:447) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:559) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:513) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:483) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:331) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:228) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:143) > [13:42:05]: at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:333) > [13:42:05]: at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:126) > [13:42:05]: at org.apache.maven.cli.MavenCli.main(MavenCli.java:282) > [13:42:05]: at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > [13:42:05]: at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > [13:42:05]: at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > [13:42:05]: at java.lang.reflect.Method.invoke(Method.java:597) > [13:42:05]: at > org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) > [13:42:05]: at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) > [13:42:05]: at > org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) > [13:42:05]: at org.codehaus.classworlds.Launcher.main(Launcher.java:375) > It seems the reason version is null is that the call to > selectVersionFromNewRangeIfAvailable() assumes that > versionRange.getRecommendedVersion() will always return non-null, else it > sets the version to null! However during the release:prepare phase this is > not true, see the output: > [13:42:04]: [INFO] [release:prepare] > [13:42:04]: [INFO] Verifying that there are no local modifications... > [13:42:04]: [INFO] Executing: svn --non-interactive status > [13:42:04]: [INFO] Working directory: C:\BuildAgent\work\23044d751bcc9843 > [13:42:05]: [INFO] Checking dependencies and plugins for snapshots ... > [13:42:05]: TEST!!! version=null > [13:42:05]: TEST!!! versionRange=[1.0,2.0) > [13:42:05]: TEST!!! getRecommendedVersion=null > TEST!!! Lines are my test code so I could see what is
[jira] Commented: (MRELEASE-318) Release plugin throws NullPointerException when using version range for dependency
[ http://jira.codehaus.org/browse/MRELEASE-318?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=235952#action_235952 ] Arik Kfir commented on MRELEASE-318: Brett, can you please elaborate about the "more general problem about ranges" you mentioned? > Release plugin throws NullPointerException when using version range for > dependency > -- > > Key: MRELEASE-318 > URL: http://jira.codehaus.org/browse/MRELEASE-318 > Project: Maven 2.x Release Plugin > Issue Type: Bug > Components: prepare >Affects Versions: 2.0-beta-7 >Reporter: David Hoffer >Assignee: Brett Porter >Priority: Blocker > Fix For: 2.1 > > Attachments: MNG-3351-unittest.patch, MNG-3351.zip, > MNG-3351_dependency_poms.zip, simple-test-case-console-log.txt, > simple-testcase.zip > > > After upgrading to 2.0.8 I find that the release plugin throws NPE if any > dependency uses version range. > I have one dependency with version range [1.0,2.0) the > rest are test scope with fixed version. > Here is the crash stack trace: > java.lang.NullPointerException: version was null for > com.xrite:xrite-colorlib-api > [13:42:05]: at > org.apache.maven.artifact.DefaultArtifact.getBaseVersion(DefaultArtifact.java:362) > [13:42:05]: at > org.apache.maven.artifact.DefaultArtifact.isSnapshot(DefaultArtifact.java:557) > [13:42:05]: at > org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.checkArtifact(CheckDependencySnapshotsPhase.java:252) > [13:42:05]: at > org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.checkProject(CheckDependencySnapshotsPhase.java:138) > [13:42:05]: at > org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.execute(CheckDependencySnapshotsPhase.java:106) > [13:42:05]: at > org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:194) > [13:42:05]: at > org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:131) > [13:42:05]: at > org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:94) > [13:42:05]: at > org.apache.maven.plugins.release.PrepareReleaseMojo.execute(PrepareReleaseMojo.java:127) > [13:42:05]: at > org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:447) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:559) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:513) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:483) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:331) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:228) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:143) > [13:42:05]: at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:333) > [13:42:05]: at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:126) > [13:42:05]: at org.apache.maven.cli.MavenCli.main(MavenCli.java:282) > [13:42:05]: at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > [13:42:05]: at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > [13:42:05]: at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > [13:42:05]: at java.lang.reflect.Method.invoke(Method.java:597) > [13:42:05]: at > org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) > [13:42:05]: at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) > [13:42:05]: at > org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) > [13:42:05]: at org.codehaus.classworlds.Launcher.main(Launcher.java:375) > It seems the reason version is null is that the call to > selectVersionFromNewRangeIfAvailable() assumes that > versionRange.getRecommendedVersion() will always return non-null, else it > sets the version to null! However during the release:prepare phase this is > not true, see the output: > [13:42:04]: [INFO] [release:prepare] > [13:42:04]: [INFO] Verifying that there are no local modifications... > [13:42:04]: [INFO] Executing: svn --non-interactive status > [13:42:04]: [INFO] Working directory: C:\BuildAgent\work\23044d751bcc9843 > [13:42:05]: [INFO] Checking dependencies and plugins for snapshots ... > [13:42:05]: TEST!!! version=null > [13:42:05]: TEST!!! versionRange=[1.0,2.0) > [13:42:05]: TEST!!! getRecommendedVersion=null > TEST!!! Lines are my test code so I could see
[jira] Commented: (MRELEASE-318) Release plugin throws NullPointerException when using version range for dependency
[ http://jira.codehaus.org/browse/MRELEASE-318?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=231734#action_231734 ] Elliot Metsger commented on MRELEASE-318: - Is there an update on this issue? I just got hit with this bug using Maven 2.2.1 and Release plugin version 2.0. Grrr. > Release plugin throws NullPointerException when using version range for > dependency > -- > > Key: MRELEASE-318 > URL: http://jira.codehaus.org/browse/MRELEASE-318 > Project: Maven 2.x Release Plugin > Issue Type: Bug > Components: prepare >Affects Versions: 2.0-beta-7 >Reporter: David Hoffer >Priority: Blocker > Attachments: MNG-3351-unittest.patch, MNG-3351.zip, > MNG-3351_dependency_poms.zip, simple-test-case-console-log.txt, > simple-testcase.zip > > > After upgrading to 2.0.8 I find that the release plugin throws NPE if any > dependency uses version range. > I have one dependency with version range [1.0,2.0) the > rest are test scope with fixed version. > Here is the crash stack trace: > java.lang.NullPointerException: version was null for > com.xrite:xrite-colorlib-api > [13:42:05]: at > org.apache.maven.artifact.DefaultArtifact.getBaseVersion(DefaultArtifact.java:362) > [13:42:05]: at > org.apache.maven.artifact.DefaultArtifact.isSnapshot(DefaultArtifact.java:557) > [13:42:05]: at > org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.checkArtifact(CheckDependencySnapshotsPhase.java:252) > [13:42:05]: at > org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.checkProject(CheckDependencySnapshotsPhase.java:138) > [13:42:05]: at > org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.execute(CheckDependencySnapshotsPhase.java:106) > [13:42:05]: at > org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:194) > [13:42:05]: at > org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:131) > [13:42:05]: at > org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:94) > [13:42:05]: at > org.apache.maven.plugins.release.PrepareReleaseMojo.execute(PrepareReleaseMojo.java:127) > [13:42:05]: at > org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:447) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:559) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:513) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:483) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:331) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:228) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:143) > [13:42:05]: at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:333) > [13:42:05]: at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:126) > [13:42:05]: at org.apache.maven.cli.MavenCli.main(MavenCli.java:282) > [13:42:05]: at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > [13:42:05]: at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > [13:42:05]: at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > [13:42:05]: at java.lang.reflect.Method.invoke(Method.java:597) > [13:42:05]: at > org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) > [13:42:05]: at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) > [13:42:05]: at > org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) > [13:42:05]: at org.codehaus.classworlds.Launcher.main(Launcher.java:375) > It seems the reason version is null is that the call to > selectVersionFromNewRangeIfAvailable() assumes that > versionRange.getRecommendedVersion() will always return non-null, else it > sets the version to null! However during the release:prepare phase this is > not true, see the output: > [13:42:04]: [INFO] [release:prepare] > [13:42:04]: [INFO] Verifying that there are no local modifications... > [13:42:04]: [INFO] Executing: svn --non-interactive status > [13:42:04]: [INFO] Working directory: C:\BuildAgent\work\23044d751bcc9843 > [13:42:05]: [INFO] Checking dependencies and plugins for snapshots ... > [13:42:05]: TEST!!! version=null > [13:42:05]: TEST!!! versionRange=[1.0,2.0) > [13:42:05]: TEST!!! getRecommendedVersion=null > TEST!!! Lines are my test code so I could see what is going on here. --
[jira] Commented: (MRELEASE-318) Release plugin throws NullPointerException when using version range for dependency
[ http://jira.codehaus.org/browse/MRELEASE-318?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_121666 ] Mark Hobson commented on MRELEASE-318: -- David, by carrying on the lengthy discussion on maven-dev I believe.. > Release plugin throws NullPointerException when using version range for > dependency > -- > > Key: MRELEASE-318 > URL: http://jira.codehaus.org/browse/MRELEASE-318 > Project: Maven 2.x Release Plugin > Issue Type: Bug >Affects Versions: 2.0-beta-7 >Reporter: David Hoffer >Priority: Blocker > Attachments: MNG-3351-unittest.patch, MNG-3351.zip, > MNG-3351_dependency_poms.zip, simple-test-case-console-log.txt, > simple-testcase.zip > > > After upgrading to 2.0.8 I find that the release plugin throws NPE if any > dependency uses version range. > I have one dependency with version range [1.0,2.0) the > rest are test scope with fixed version. > Here is the crash stack trace: > java.lang.NullPointerException: version was null for > com.xrite:xrite-colorlib-api > [13:42:05]: at > org.apache.maven.artifact.DefaultArtifact.getBaseVersion(DefaultArtifact.java:362) > [13:42:05]: at > org.apache.maven.artifact.DefaultArtifact.isSnapshot(DefaultArtifact.java:557) > [13:42:05]: at > org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.checkArtifact(CheckDependencySnapshotsPhase.java:252) > [13:42:05]: at > org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.checkProject(CheckDependencySnapshotsPhase.java:138) > [13:42:05]: at > org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.execute(CheckDependencySnapshotsPhase.java:106) > [13:42:05]: at > org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:194) > [13:42:05]: at > org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:131) > [13:42:05]: at > org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:94) > [13:42:05]: at > org.apache.maven.plugins.release.PrepareReleaseMojo.execute(PrepareReleaseMojo.java:127) > [13:42:05]: at > org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:447) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:559) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:513) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:483) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:331) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:228) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:143) > [13:42:05]: at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:333) > [13:42:05]: at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:126) > [13:42:05]: at org.apache.maven.cli.MavenCli.main(MavenCli.java:282) > [13:42:05]: at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > [13:42:05]: at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > [13:42:05]: at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > [13:42:05]: at java.lang.reflect.Method.invoke(Method.java:597) > [13:42:05]: at > org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) > [13:42:05]: at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) > [13:42:05]: at > org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) > [13:42:05]: at org.codehaus.classworlds.Launcher.main(Launcher.java:375) > It seems the reason version is null is that the call to > selectVersionFromNewRangeIfAvailable() assumes that > versionRange.getRecommendedVersion() will always return non-null, else it > sets the version to null! However during the release:prepare phase this is > not true, see the output: > [13:42:04]: [INFO] [release:prepare] > [13:42:04]: [INFO] Verifying that there are no local modifications... > [13:42:04]: [INFO] Executing: svn --non-interactive status > [13:42:04]: [INFO] Working directory: C:\BuildAgent\work\23044d751bcc9843 > [13:42:05]: [INFO] Checking dependencies and plugins for snapshots ... > [13:42:05]: TEST!!! version=null > [13:42:05]: TEST!!! versionRange=[1.0,2.0) > [13:42:05]: TEST!!! getRecommendedVersion=null > TEST!!! Lines are my test code so I could see what is going on here. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the admi
[jira] Commented: (MRELEASE-318) Release plugin throws NullPointerException when using version range for dependency
[ http://jira.codehaus.org/browse/MRELEASE-318?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_121645 ] David Hoffer commented on MRELEASE-318: --- Mark, Yes, I prefer the latter secenario as well. It seems this is dependent on MNG-3092, how do we proceed to get resolution? What is the normal maven proceedure to do this? If I can assist in any way, let me know. -Dave > Release plugin throws NullPointerException when using version range for > dependency > -- > > Key: MRELEASE-318 > URL: http://jira.codehaus.org/browse/MRELEASE-318 > Project: Maven 2.x Release Plugin > Issue Type: Bug >Affects Versions: 2.0-beta-7 >Reporter: David Hoffer >Priority: Blocker > Attachments: MNG-3351-unittest.patch, MNG-3351.zip, > MNG-3351_dependency_poms.zip, simple-test-case-console-log.txt, > simple-testcase.zip > > > After upgrading to 2.0.8 I find that the release plugin throws NPE if any > dependency uses version range. > I have one dependency with version range [1.0,2.0) the > rest are test scope with fixed version. > Here is the crash stack trace: > java.lang.NullPointerException: version was null for > com.xrite:xrite-colorlib-api > [13:42:05]: at > org.apache.maven.artifact.DefaultArtifact.getBaseVersion(DefaultArtifact.java:362) > [13:42:05]: at > org.apache.maven.artifact.DefaultArtifact.isSnapshot(DefaultArtifact.java:557) > [13:42:05]: at > org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.checkArtifact(CheckDependencySnapshotsPhase.java:252) > [13:42:05]: at > org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.checkProject(CheckDependencySnapshotsPhase.java:138) > [13:42:05]: at > org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.execute(CheckDependencySnapshotsPhase.java:106) > [13:42:05]: at > org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:194) > [13:42:05]: at > org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:131) > [13:42:05]: at > org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:94) > [13:42:05]: at > org.apache.maven.plugins.release.PrepareReleaseMojo.execute(PrepareReleaseMojo.java:127) > [13:42:05]: at > org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:447) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:559) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:513) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:483) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:331) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:228) > [13:42:05]: at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:143) > [13:42:05]: at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:333) > [13:42:05]: at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:126) > [13:42:05]: at org.apache.maven.cli.MavenCli.main(MavenCli.java:282) > [13:42:05]: at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > [13:42:05]: at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > [13:42:05]: at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > [13:42:05]: at java.lang.reflect.Method.invoke(Method.java:597) > [13:42:05]: at > org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) > [13:42:05]: at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) > [13:42:05]: at > org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) > [13:42:05]: at org.codehaus.classworlds.Launcher.main(Launcher.java:375) > It seems the reason version is null is that the call to > selectVersionFromNewRangeIfAvailable() assumes that > versionRange.getRecommendedVersion() will always return non-null, else it > sets the version to null! However during the release:prepare phase this is > not true, see the output: > [13:42:04]: [INFO] [release:prepare] > [13:42:04]: [INFO] Verifying that there are no local modifications... > [13:42:04]: [INFO] Executing: svn --non-interactive status > [13:42:04]: [INFO] Working directory: C:\BuildAgent\work\23044d751bcc9843 > [13:42:05]: [INFO] Checking dependencies and plugins for snapshots ... > [13:42:05]: TEST!!! version=null > [13:42:05]: TEST!!! versionRange=[1.0,2.0) > [13:42:05]: TEST!!! getRecommendedVersion=null > TEST!!! Lines are my tes