我有一个java项目,它由3个子项目组成,每个项目都生成一个.jar工件(并且它们之间有子依赖关系)。 此外,还有一个Web项目依赖于前3个项目并生成war文件。战争文件是我的最终工件,即我发送给客户的东西。
此外,我有一个包含所有其他项目的父模块:
<modules>
<module>../core</module>
<module>../commons</module>
<module>../api</module>
<module>../web</module>
</modules>
我生成eclipse文件(mvn eclipse:eclipse)并使用eclipse。问题是如果我修改其中一个非Web项目,我必须在将Web项目部署到我的Web容器之前手动安装它。如何使Web项目直接依赖于其他人的源代码而不是安装在存储库中的版本。
答案 0 :(得分:0)
在您的Web应用程序属性中(在Package explorer中右键clic,然后是“属性”),在“J2EE Module Dependencies”中添加三个模块(core,commons和api)(必须打开其他模块)在Eclipse工作区中。)
答案 1 :(得分:0)
答案 2 :(得分:0)
我认为你的问题是你只是建立战争项目。如果要从命令行构建它,那么您必须构建的是父模块。包含父模块的目录中的“mvn package”应该足够了。当然这意味着你必须每次都构建所有的包,但这就是maven的工作方式。
答案 3 :(得分:0)
依赖:树目标本身将在存储库而不是反应堆中查找。您可以通过mvn安装来解决这个问题,如前所述,或者做一些不那么繁琐的调用反应堆的事情,例如
mvn编译依赖:树
适合我。
编辑:D'哦!把这个答案发给了错误的问题。本来是要回答this