2016-03-28 19 views
1

我在Netbeans平臺中創建了一個包含一組jar包依賴項的包裝模塊,我想讓所有的包(包括罐子裏的包)都可用於其他依賴的模塊在這個包裝上。到目前爲止,我已經能夠在POM這種方式配置NBM-Maven的插件來做到這一點:導出nbm-maven-plugin中的所有包

<build> 
    ... 
    <plugin> 
     <groupId>org.codehaus.mojo</groupId> 
     <artifactId>nbm-maven-plugin</artifactId> 
     <configuration> 
      <publicPackages> 
       <package>org.w3c.dom.traversal</package> 
       <package>org.w3c.dom.views</package> 
       <package>org.w3c.dom.xpath</package> 
       <package>org.xml.sax</package> 
       <package>org.xml.sax.ext</package> 
       ... etc 
      </publicPackages> 
     </configuration> 
    </plugin> 

的問題是,包裝得到了幾十個,每個都有一個包的負載出口罐子。這使得POM文件這麼長(到目前爲止,已超過1K行包,我不得不手動添加它們以使項目編譯繼續)

有什麼方法或配置可以公開所有程序包而無需全部列出它們在POM?

回答

1

我使用這個插件:https://github.com/mojohaus/nbm-maven-plugin

有你可以使用通配符來定義包:

<plugin> 
    <groupId>org.codehaus.mojo</groupId> 
    <artifactId>nbm-maven-plugin</artifactId> 
    <version>3.8.1</version> 
    <extensions>true</extensions> 
    <configuration> 
     <publicPackages> 
      <publicPackage>org.foo.api</publicPackage> 
      <publicPackage>org.apache.commons.*</publicPackage> 
     </publicPackages> 
    </configuration> 
</plugin> 
+0

糟糕!我犯了一個錯誤,我使用nbm插件而不是jar插件 –

+0

,所以我可以只指定 *使其全部導出? –

+0

試試吧:-) –