From 773b8de638ffff875e62f2bbbfb870cc22c68228 Mon Sep 17 00:00:00 2001 From: kohsuke Date: Thu, 1 Feb 2007 06:22:47 +0000 Subject: [PATCH] during a build maven sets a class folder instead of a jar file as artifact. ignore. git-svn-id: https://hudson.dev.java.net/svn/hudson/trunk/hudson/main@2010 71c3de6d-444a-0410-be80-ed276b4c234a --- .../hudson/maven/reporters/MavenArtifactArchiver.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/core/src/main/java/hudson/maven/reporters/MavenArtifactArchiver.java b/core/src/main/java/hudson/maven/reporters/MavenArtifactArchiver.java index 71197ce165..dbca06c50a 100644 --- a/core/src/main/java/hudson/maven/reporters/MavenArtifactArchiver.java +++ b/core/src/main/java/hudson/maven/reporters/MavenArtifactArchiver.java @@ -15,6 +15,7 @@ import org.apache.maven.project.MavenProject; import org.kohsuke.stapler.StaplerRequest; import java.io.IOException; +import java.io.File; import java.util.HashSet; import java.util.Set; @@ -48,10 +49,13 @@ public class MavenArtifactArchiver extends MavenReporter { * Archives the given {@link Artifact}. */ private void record(MavenBuildProxy build, Artifact a, BuildListener listener, Set archivedFiles) throws IOException, InterruptedException { - if(a.getFile()==null) + File file = a.getFile(); + if(file==null) return; // perhaps build failed and didn't leave an artifact + if(file.isDirectory()) + return; // during a build maven sets a class folder instead of a jar file as artifact. ignore. - listener.getLogger().println("Archiving "+a.getFile()); + listener.getLogger().println("Archiving "+ file); FilePath target = build.getArtifactsDir() .child(a.getGroupId()) @@ -59,7 +63,7 @@ public class MavenArtifactArchiver extends MavenReporter { .child(a.getVersion()) .child(a.getArtifactId() + '-' + a.getVersion() + (a.getClassifier() != null ? '-' + a.getClassifier() : "") + '.' + a.getType()); - new FilePath(a.getFile()).copyTo(target); + new FilePath(file).copyTo(target); archivedFiles.add(target); } -- GitLab