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 ); + } } }