[ https://jira.codehaus.org/browse/MASSEMBLY-450?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=290338#comment-290338 ]
Hesham Saleh commented on MASSEMBLY-450: ---------------------------------------- Facing the same problem in Maven 2.2.1 (rdebian-4) using the maven-jar-plugin 2.3.2. I am also convinced that an option to force overwriting a pre-existent should be provided. > manifestEntries ignored when manfestFile is specified > ----------------------------------------------------- > > Key: MASSEMBLY-450 > URL: https://jira.codehaus.org/browse/MASSEMBLY-450 > Project: Maven 2.x Assembly Plugin > Issue Type: Bug > Affects Versions: 2.2-beta-4 > Reporter: Robert Cauble > Attachments: example.zip > > > The maven jar plugin supports the behavior of manifestEntries overriding the > manifestFile as indicated here: > http://maven.apache.org/guides/mini/guide-manifest.html > However, within the maven assembly plugin, if manifestFile is specified, > manifestEntries is ignored. > Reproduction > ============ > > unzip example.zip > > cd example > > mvn package > > cd target > > unzip example-4.2-plugin.jar > > cat META-INF/MANFEST > Results: > Manifest-Version: 1.0 > Archiver-Version: Plexus Archiver > Created-By: 14.0-b16 (Sun Microsystems Inc.) > Bundle-ManifestVersion: 2 > Bundle-Name: example > Bundle-SymbolicName: example; singleton:=true > Bundle-Version: 1.0 > Expected: > Manifest-Version: 1.0 > Archiver-Version: Plexus Archiver > Created-By: 14.0-b16 (Sun Microsystems Inc.) > Bundle-ManifestVersion: 2 > Bundle-Name: example > Bundle-SymbolicName: example; singleton:=true > Bundle-Version: 4.2 > The problem appears to be in the class ManifestConfigurationFinalizer: > if ( manifestFile != null ) > { > ... > manifest = new Manifest( manifestFileReader ); > ... > } > else > { > manifest = mavenArchiver.getManifest( project, > archiveConfiguration.getManifest() ); > } > I believe the fix is to change to the following (this already handles merging > the manifest file with the configured manifestEntries) > manifest = mavenArchiver.getManifest( project, archiveConfiguration ); -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://jira.codehaus.org/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira