我想完成我认为these directions描述的内容。
我想在rcp平台应用程序中使用基于maven的外部项目。
我使用了新的Project向导来构建一个新的基于maven的应用程序,其中包含一个基于maven的模块。我已将外部依赖项添加到基于maven的模块中。
我还将publicPackages部分添加到我的模块的pom中。
当我右键单击模块并转到ProjectProperties-> PublicPackages时,我可以看到列出了带有复选标记的正确软件包。
我的maven模块构建得很好。
但是,当我尝试将maven-module添加为另一个模块的依赖项时,找不到PublicPackages中列出的包。
如果我偷看nbm,我可以看到我想暴露的罐子在netbeans \ modules \ ext
下面有没有办法构建一个包装另一个maven项目的maven模块?
nbm-maven-plugin docs包含一个听起来很像我想做的例子:
公共包声明
默认情况下,所有模块的包(和类)以及给定模块的私有。如果要将任何API公开给其他模块,则需要在pom.xml中声明这些公共包。这不仅包括您自己的类,还包括与您的模块一起打包并将被其他模块重用的任何其他第三方库类。
例如:
<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>
有一个包org.foo.api公开(但不是org.foo.api.impl包)和任何以org.apache.commons开头的包,所以org.apache.commons.io和org.apache都是.commons.exec包暴露在外面
我显然没有正确解释这些文档,因为这种行为不是我所看到的。