2009-07-02 7 views
8

Ich versuche einen Klassenpfad zu dem vom maven-assembly-plugin erzeugten jar hinzuzufügen. Die Assembly bulids außer dem Manifest hat keinen Klassenpfad. Unten ist meine Konfiguration. Jede Hilfe wäre willkommen. Vielen Dank!maven-assembly-plugin

<plugin> 
    <artifactId>maven-assembly-plugin</artifactId> 
    <executions> 
    <execution> 
     <id>make-assembly</id> 
     <phase>package</phase> 
     <goals> 
     <goal>assembly</goal> 
     </goals> 
    </execution> 
    </executions> 
    <configuration> 
    <descriptors> 
     <descriptor>assembly/package.xml</descriptor> 
    </descriptors> 
    <archive> 
     <manifest> 
     <mainClass>mymain.Main</mainClass> 
     <addClasspath>true</addClasspath> 
     </manifest> 
    </archive> 
    </configuration> 
</plugin> 

Antwort

7

Ich sehe, Sie verwenden einen benutzerdefinierten Assembly-Deskriptor. Aber die Dokumentationsseite des Plugins hat dies über das <archive> Element zu sagen:

An dieser Stelle nur das Glas Montage-Format unterstützt das <archive> Konfigurationselement. Definitionsgemäß erzeugen verzeichnisbasierte Assembly-Mojos - Assembly: Verzeichnis, Assembly: Verzeichnis-Inline und Assembly: Verzeichnis-Einzeln - kein Archiv im JAR-Format und unterstützen daher nicht das Element <archive>.

+0

, die Sinn macht. Ich muss das übersehen haben. vielen Dank. Gibt es eine Möglichkeit, ein Manifest im Jar zu generieren, das durch die Paketphase generiert wird? –

+0

Absolut: http://maven.apache.org/shared/maven-archiver/examples/manifestFile.html – lindelof

+0

nett, danke. jemand anderes hatte das erwähnt, aber ich wusste nicht, wie die beiden zusammenpassen. funktioniert super! –