2009-07-02 6 views
8

maven-assembly-plugin에 의해 생성 된 jar에 classpath를 추가하려고합니다. 매니페스트를 제외하고는 어셈블리 경로가 클래스 경로를 갖지 않습니다. 아래는 나의 구성이다. 어떤 도움을 주시면 감사하겠습니다. 감사!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> 

답변

7

사용자 지정 어셈블리 설명자를 사용하고 있습니다. 하지만 플러그인의 설명서 페이지는 이것이 <archive> 요소에 대해 말하고있다 :

이 시점에서

만 항아리 어셈블리 형식은 <archive> 구성 요소를 지원합니다. 정의에 따라 디렉토리 기반 어셈블리 mojos - assembly : 디렉토리, 어셈블리 : 디렉토리 - 인라인 및 어셈블리 : directory-single은 jar 형식 아카이브를 생성하지 않으므로 <archive> 요소를 지원하지 않습니다.

+0

이 있기 때문에 메인 클래스를 추가하지 않습니다. 나는 그것을 간파 했음에 틀림 없다. 정말 고마워. 패키지 단계에서 생성되는 항아리에 매니페스트를 생성하는 방법은 무엇입니까? –

+0

절대적으로 : http://maven.apache.org/shared/maven-archiver/examples/manifestFile.html – lindelof

+0

감사합니다. 다른 사람이 그것을 사용하여 언급했지만, 나는 두 사람이 함께 어울리는 것을 깨닫지 못했습니다. 위대한 작품! –