我在我的项目中观察到以下 Maven 行为,这对我来说没有意义。这是正在发生的事情的本质。
假设我有一个包含两个模块的项目
- com.example.foo.jar
- com.example.bar.jar bar 依赖于 foo
- 两者共享一个包含 Maven 模块的公共(public)父项目
当我的本地 .m2 为空,因此 foo 和 bar 未安装时。
- 在
project/
目录中mvn clean verify
工作并且构建成功 - 在
bar/
目录中mvn初始化
不起作用,我收到一条错误消息,指出maven无法解析bar对foo的依赖
那么为什么当我从项目文件夹而不是单个模块调用它时,maven 可以构建项目呢?
project/
pom.xml
foo/
pom.xml
bar/
pom.xml
我试图避免这里讨论的mvn install
hack http://developer-blog.cloudbees.com/2012/12/maven-and-hack.html
最佳答案
您可以在 react 器中构建子模块:
mvn -pl bar package -am
您还需要包含 -am
来构建 foo
,否则 Maven 将无法获取 foo
的 jar
来自。
关于java - 多模块构建人工解决方案与单独构建?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19204546/