Author: mperham
Date: Thu Jun 22 17:28:06 2006
New Revision: 416525

URL: http://svn.apache.org/viewvc?rev=416525&view=rev
Log:
PR: MNG-2284
Submitted by: Fredrik Vraalsen
Merge user-supplied and programmatic Class-Path entries in manifest

Modified:
    
maven/shared/trunk/maven-archiver/src/main/java/org/apache/maven/archiver/MavenArchiver.java

Modified: 
maven/shared/trunk/maven-archiver/src/main/java/org/apache/maven/archiver/MavenArchiver.java
URL: 
http://svn.apache.org/viewvc/maven/shared/trunk/maven-archiver/src/main/java/org/apache/maven/archiver/MavenArchiver.java?rev=416525&r1=416524&r2=416525&view=diff
==============================================================================
--- 
maven/shared/trunk/maven-archiver/src/main/java/org/apache/maven/archiver/MavenArchiver.java
 (original)
+++ 
maven/shared/trunk/maven-archiver/src/main/java/org/apache/maven/archiver/MavenArchiver.java
 Thu Jun 22 17:28:06 2006
@@ -65,7 +65,18 @@
             {
                 String key = (String) iter.next();
                 String value = (String) entries.get( key );
-                addManifestAttribute( manifest, key, value );
+                Manifest.Attribute attr = 
manifest.getMainSection().getAttribute(key);
+                if ( key.equals( "Class-Path" ) && attr != null )
+                {
+                    // Merge the user-supplied Class-Path value with the 
programmatically
+                    // generated Class-Path.  Note that the user-supplied 
value goes first
+                    // so that resources there will override any in the 
standard Class-Path.
+                    attr.setValue( value + " " + attr.getValue() );
+                }
+                else
+                {
+                    addManifestAttribute( manifest, key, value );
+                }
             }
         }
 


Reply via email to