diff --git a/src/main/java/org/apache/maven/plugins/install/InstallMojo.java b/src/main/java/org/apache/maven/plugins/install/InstallMojo.java index a5960cd..3548969 100644 --- a/src/main/java/org/apache/maven/plugins/install/InstallMojo.java +++ b/src/main/java/org/apache/maven/plugins/install/InstallMojo.java @@ -196,12 +196,13 @@ private void processProject(MavenProject project, InstallRequest request) throws // incomplete project: is not pom project and projectArtifact has no file // we must compare coordinates ONLY (as projectArtifact may not have file, and Artifact.equals factors it in) - boolean pomArtifactIsMainArtifact = ArtifactIdUtils.equalsId(pomArtifact, projectArtifact); - if (pomArtifactIsMainArtifact) { + // BUT if projectArtifact has file set, use that one + if (ArtifactIdUtils.equalsId(pomArtifact, projectArtifact)) { + if (isFile(projectArtifact.getFile())) { + pomArtifact = projectArtifact; + } projectArtifact = null; } - // is not packaged, is "incomplete" - boolean isIncomplete = projectArtifact != null && !isFile(projectArtifact.getFile()); if (isFile(pomArtifact.getFile())) { request.addArtifact(pomArtifact); @@ -209,6 +210,8 @@ private void processProject(MavenProject project, InstallRequest request) throws throw new MojoExecutionException("The project POM could not be attached"); } + // is not packaged, is "incomplete" + boolean isIncomplete = projectArtifact != null && !isFile(projectArtifact.getFile()); if (projectArtifact != null) { if (!isIncomplete) { request.addArtifact(projectArtifact);