如何在maven多模块项目中共享依赖项?

时间:2012-06-29 00:27:41

标签: maven jar multi-module

我对这是如何工作有点好奇 - 如果我在Maven多模块项目中有5个模块项目,你可以将内容和包导入其他模块而不将该项目作为依赖项添加吗?或者你实际上需要.jar(或快照jar)才能使用其他模块的结构/功能?

谢谢,

1 个答案:

答案 0 :(得分:1)

模块间依赖关系(在另一个模块的pom.xml中添加一个模块作为依赖关系)在Maven世界中是有意义的(作为构建工具,而不是IDE)。当您从命令行构建多模块项目时,您不需要自己关注每个模块之间的依赖关系,Maven将在拓扑上对模块进行排序,以便始终在依赖模块之前构建依赖关系(因此生成jar文件)(所以它可以引用生成的jar文件作为依赖项。)

如果您使用像Eclipse这样的IDE,那么(理论上)这不是必需的,因为您可以通过Eclipse Right click project and choose Properties -> Java Build Path -> Projects -> Add中的某些手动设置实现相同的结果(将一个项目添加为另一个项目的依赖项),这是自动的如果在pom.xml中定义模块间依赖关系,则在Eclipse导入多模块项目时处理。

问题是为什么你想要做一些不寻常的事情(没有将该项目作为依赖项添加),你无法从中获得任何好处。