How to add Class-Path to the manifest file with maven
java, manifest, maven
Solution
This did the trick Omitting the addClasspath and adding manifestEntries Now, log4j.properties can reside outside the jar - and still be found...
<manifest>
<addClasspath>true</addClasspath>
</manifest>
This is working:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifestEntries>
<Built-By>Me</Built-By>
<Class-Path>.</Class-Path>
</manifestEntries>
</archive>
</configuration>
</plugin>
Output:
Manifest-Version: 1.0
Archiver-Version: Plexus Archiver
Created-By: Apache Maven
Build-Jdk: 1.6.0_45
Built-By: Me
Class-Path: .
Problem
When using the maven-jar-plugin I would like to add entry to the Manifest.mf So it will contain: Class-Path: . When i add this entry to the Pom: ``` <Class-Path>.</Class-Path> ``` It will create Class-Path with all dependency Like: Class-Path: . jar1name.jar jar2name.jar etc Instead of just Class-Path: . Is there a way to avoid maven from adding all jar names to the Class-Path? Thanks ``` <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <configuration> <archive> <manifest> <addClasspath>true</addClasspath> </manifest> <manifestEntries> <Built-By>Me</Built-By> <Class-Path>.</Class-Path> </manifestEntries> </archive> </configuration> </plugin> ```