2013-05-14 72 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的文档该部分。

相关问题