2013-05-14 104 views
0

在netbeans 7.2.1中,我嘗試使用maven assembly插件構建一個具有依賴關係的可執行jar。它在過去有效,但是現在構建jar時,它包含除了項目本身的類以外的所有依賴項。netbeans maven-assembly-plugin構建具有依賴關係但沒有項目類的jar

運行clean install assembly:single時,目標目錄包含2個jar,icfStatusPage-1.0-SNAPSHOT-jar -with-dependencies.jar和icfStatusPage-1.0-SNAPSHOT.jar。一個包含所有的依賴關係,另一個包含所有的類。

具有依賴關係的jar的構建似乎沒問題。 (缺少pom文件是手動安裝的工件)。

[assembly:single] 
Missing POM for cf:conn-fwk-int:jar:1.0 
Missing POM for cf:conn-fwk:jar:1.0 
Building jar: /Users/petervannes/NetBeansProjects2/icfStatusPage/target/icfStatusPage-1.0-SNAPSHOT-jar-with-dependencies.jar 
------------------------------------------------------------------------ 
BUILD SUCCESS 
------------------------------------------------------------------------ 

Plugin configuration snippet;

<build> 
    <plugins> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-compiler-plugin</artifactId> 
      <version>2.4</version> 
      <configuration> 
       <source>1.6</source> 
       <target>1.6</target> 
       <debug>false</debug> 
      </configuration> 
     </plugin> 
     <plugin> 
      <artifactId>maven-assembly-plugin</artifactId> 
      <version>2.4</version> 
      <configuration> 
       <archive> 
        <manifest> 
         <addClasspath>true</addClasspath> 
         <mainClass>nl.organization.icfstatuspage.IcfStatus</mainClass> 
        </manifest> 
       </archive> 
       <descriptorRefs> 
        <descriptorRef>jar-with-dependencies</descriptorRef> 
       </descriptorRefs> 
      </configuration> 
     </plugin> 
    </plugins> 

</build> 
<properties> 

一直在谷歌搜索和嘗試多個選項,直到現在沒有成功。 歡迎任何幫助!

乾杯,

彼得

回答

1

我被困在你和已經很難找到答案的相同點,所以儘管這是一個老問題,因爲它仍然在搜索出來,當我被卡住了,這是答案。我認爲你需要在<executions>部分添加。我對Maven幾乎一無所知,我只是想讓它工作......這似乎是個竅門。

<plugin> 
     <artifactId>maven-assembly-plugin</artifactId> 
     <version>2.4</version> 
     <configuration> 
      <archive> 
       <manifest> 
        <addClasspath>true</addClasspath> 
        <mainClass>nl.organization.icfstatuspage.IcfStatus</mainClass> 
        <addDefaultImplementationEntries>true</addDefaultImplementationEntries> 
        <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries> 
       </manifest> 
      </archive> 
      <descriptorRefs> 
       <descriptorRefs>jar-with-dependencies</descriptorRefs> 
      </descriptorRefs> 
     </configuration> 
     <executions> 
      <execution> 
       <id>make-assembly</id> <!-- this is used for inheritance merges --> 
       <phase>package</phase> <!-- bind to the packaging phase --> 
       <goals> 
        <goal>single</goal> 
       </goals> 
      </execution> 
     </executions> 
    </plugin> 

我得到了maven-assembly-plugin usage從Maven的文檔該部分。

相關問題