使用Vaadin和提供的NetBeans Vaadin plugin for NetBeans在multi-module 8.1中创建新的archetype with 4 modules 7.6.4项目后,在哪里添加依赖项添加库?
-ui
“依赖关系”是正确的地方吗?这会被-production
模块继承吗?或者我是否也需要在那里指定依赖项?或者其他地方?
我不是Maven maven,没有使用Maven命令行。我正在使用NetBeans自己的用户界面,通过Projects
面板中的上下文单击添加依赖项。
答案 0 :(得分:2)
我正在开展一个非常相似的项目。如果您有父级和依赖项,则maven将这些依赖项从子级继承到父级。因此,请参考您需要它的模块的基础pom中的每个依赖项。例如:
模块A需要依赖性Z
模块B需要依赖Y
模块C需要依赖关系Z和Y
您的模块依赖于:
父母需要A,B,C
C需要B
所以在B中你会输入Y的依赖关系,在C中你需要B和Z的依赖关系,在A中你还需要Z.
C不需要Y声明,因为它从B
继承了它您可能遇到的重大问题是处理交叉继承,有时您需要告诉某些模块排除从其他jar文件继承的一些文件,即E.G旧版本的文件。你可以通过:
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>4.2.0.Final</version>
<exclusions>
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
举个例子。希望有所帮助
答案 1 :(得分:2)
是的,这个记录很少。同意。
是的,-ui
模块是您完成所有工作并添加依赖项(Vaadin Add-ons除外)的地方。 -production
模块将自动继承-ui
,因此您实际上永远不会更改生产模块上的任何内容。
-widgetset
项目应该添加Vaadin附加组件。但是我没有直接这样做,而是使用Netbeans Vaadin Add-on Browser。这个你可以从你的多模块项目中的任何模块激活,所以即使你在-ui
模块上激活它,它也会发现你正在添加一个Vaadin附加组件并将依赖项添加到POM在-widgetset
项目上,而不是您右键单击的模块。甜。
当你使用多模块原型时,也会出现一个烦人的错误,这意味着你生成的WAR会非常大,没有充分的理由。见https://stackoverflow.com/a/35406389/1504556。修复很容易。