[maven-war-plugin] 01/02: Apply upstream fix for MWAR-269, needed to package Guacamole

Thorsten Glaser tg at moszumanska.debian.org
Fri Oct 28 23:42:23 UTC 2016


This is an automated email from the git hooks/post-receive script.

tg pushed a commit to branch master
in repository maven-war-plugin.

commit 9360c3074116dd070fa3025a687c918a3bd0358f
Author: mirabilos <t.glaser at tarent.de>
Date:   Sat Oct 29 01:19:48 2016 +0200

    Apply upstream fix for MWAR-269, needed to package Guacamole
    
    (as announced in IRC)
---
 debian/changelog             |  7 ++++++
 debian/patches/MWAR-269.diff | 55 ++++++++++++++++++++++++++++++++++++++++++++
 debian/patches/series        |  1 +
 3 files changed, 63 insertions(+)

diff --git a/debian/changelog b/debian/changelog
index 8d0621b..a57b361 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,10 @@
+maven-war-plugin (2.2-2) unstable; urgency=medium
+
+  * Team upload.
+  * Apply upstream fix for MWAR-269
+
+ -- Thorsten Glaser <tg at mirbsd.de>  Sat, 29 Oct 2016 01:19:15 +0200
+
 maven-war-plugin (2.2-1) unstable; urgency=medium
 
   * Team upload.
diff --git a/debian/patches/MWAR-269.diff b/debian/patches/MWAR-269.diff
new file mode 100644
index 0000000..a9f3caf
--- /dev/null
+++ b/debian/patches/MWAR-269.diff
@@ -0,0 +1,55 @@
+# DP: from https://issues.apache.org/jira/browse/MWAR-269
+# DP: fix already contained in later upstream versions
+
+--- a/src/main/java/org/apache/maven/plugin/war/packaging/AbstractWarPackagingTask.java
++++ b/src/main/java/org/apache/maven/plugin/war/packaging/AbstractWarPackagingTask.java
+@@ -32,6 +32,7 @@ import org.apache.maven.plugin.war.util.
+ import org.apache.maven.shared.filtering.MavenFilteringException;
+ import org.codehaus.plexus.archiver.ArchiverException;
+ import org.codehaus.plexus.archiver.UnArchiver;
++import org.codehaus.plexus.archiver.jar.JarArchiver;
+ import org.codehaus.plexus.archiver.manager.NoSuchArchiverException;
+ import org.codehaus.plexus.interpolation.InterpolationException;
+ import org.codehaus.plexus.util.DirectoryScanner;
+@@ -264,14 +265,14 @@ public abstract class AbstractWarPackagi
+     }
+ 
+     /**
+-     * Copy file from source to destination. The directories up to <code>destination</code>
++     * Copy file or folder from source to destination. The directories up to <code>destination</code>
+      * will be created if they don't already exist. if the <code>onlyIfModified</code> flag
+      * is <tt>false</tt>, <code>destination</code> will be overwritten if it already exists. If the
+      * flag is <tt>true</tt> destination will be overwritten if it's not up to date.
+      * <p/>
+      *
+      * @param context        the packaging context
+-     * @param source         an existing non-directory <code>File</code> to copy bytes from
++     * @param source         an existing file or directory <code>File</code> to copy bytes from or assemble jar from
+      * @param destination    a non-directory <code>File</code> to write bytes to (possibly overwriting).
+      * @param targetFilename the relative path of the file from the webapp root directory
+      * @param onlyIfModified if true, copy the file only if the source has changed, always copy otherwise
+@@ -290,9 +291,21 @@ public abstract class AbstractWarPackagi
+         }
+         else
+         {
+-            FileUtils.copyFile( source.getCanonicalFile(), destination );
+-            // preserve timestamp
+-            destination.setLastModified( source.lastModified() );
++        	if (source.isDirectory()) {
++        		JarArchiver jarArchiver = new JarArchiver();
++        		try {
++					jarArchiver.setDestFile( destination );
++					jarArchiver.addDirectory( source.getCanonicalFile() );
++					jarArchiver.createArchive();
++				} catch (ArchiverException e) {
++					// wrap ArchiverException in IOException
++					throw new IOException(e);
++				}        		
++        	} else {
++	            FileUtils.copyFile( source.getCanonicalFile(), destination );
++	            // preserve timestamp
++	            destination.setLastModified( source.lastModified() );
++        	}
+             context.getLog().debug( " + " + targetFilename + " has been copied." );
+             return true;
+         }
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 0000000..2927438
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1 @@
+MWAR-269.diff

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-java/maven-war-plugin.git



More information about the pkg-java-commits mailing list