You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by gb...@apache.org on 2016/10/08 18:26:40 UTC

svn commit: r1763928 - /maven/shared/trunk/maven-artifact-transfer/src/main/java/org/apache/maven/shared/project/install/internal/DefaultProjectInstaller.java

Author: gboue
Date: Sat Oct  8 18:26:40 2016
New Revision: 1763928

URL: http://svn.apache.org/viewvc?rev=1763928&view=rev
Log:
[MSHARED-594] NullPointerException is thrown when trying to install a project without POM file

Adding null-check for MavenProject.getFile(): it could be the case that there is no POM file for the project, when it only has attached artifacts and those should get installed.

Modified:
    maven/shared/trunk/maven-artifact-transfer/src/main/java/org/apache/maven/shared/project/install/internal/DefaultProjectInstaller.java

Modified: maven/shared/trunk/maven-artifact-transfer/src/main/java/org/apache/maven/shared/project/install/internal/DefaultProjectInstaller.java
URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-artifact-transfer/src/main/java/org/apache/maven/shared/project/install/internal/DefaultProjectInstaller.java?rev=1763928&r1=1763927&r2=1763928&view=diff
==============================================================================
--- maven/shared/trunk/maven-artifact-transfer/src/main/java/org/apache/maven/shared/project/install/internal/DefaultProjectInstaller.java (original)
+++ maven/shared/trunk/maven-artifact-transfer/src/main/java/org/apache/maven/shared/project/install/internal/DefaultProjectInstaller.java Sat Oct  8 18:26:40 2016
@@ -97,14 +97,21 @@ public class DefaultProjectInstaller
 
         if ( isPomArtifact )
         {
-            installer.install( buildingRequest, Collections.<Artifact>singletonList( new ProjectArtifact( project ) ) );
-            installChecksums( buildingRequest, artifactRepository, artifact, createChecksum );
-            addMetaDataFilesForArtifact( artifactRepository, artifact, metadataFiles, createChecksum );
+            if ( pomFile != null )
+            {
+                installer.install( buildingRequest,
+                                   Collections.<Artifact>singletonList( new ProjectArtifact( project ) ) );
+                installChecksums( buildingRequest, artifactRepository, artifact, createChecksum );
+                addMetaDataFilesForArtifact( artifactRepository, artifact, metadataFiles, createChecksum );
+            }
         }
         else
         {
-            metadata = new ProjectArtifactMetadata( artifact, pomFile );
-            artifact.addMetadata( metadata );
+            if ( pomFile != null )
+            {
+                metadata = new ProjectArtifactMetadata( artifact, pomFile );
+                artifact.addMetadata( metadata );
+            }
 
             File file = artifact.getFile();