The <manifestSections> element provides a way to add custom manifest sections. It contains a list of <manifestSection> elements.
Note: As with all the examples here, this configuration can be used in all plugins that use Maven Archiver, not just maven-jar-plugin as in this example.
Given this configuration:
<project> ... <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> ... <configuration> <archive> <manifestSections> <manifestSection> <name>foo</name> <manifestEntries> <id>nice foo</id> </manifestEntries> </manifestSection> <manifestSection> <name>bar</name> <manifestEntries> <id>nice bar</id> </manifestEntries> </manifestSection> </manifestSections> </archive> </configuration> ... </plugin> </plugins> </build> ... </project>
The following content will end up in the manifest:
Manifest-Version: 1.0 Created-By: Apache Maven ${maven.version} Built-By: ${user.name} Build-Jdk: ${java.version} Name: foo id: nice foo Name: bar id: nice bar