Java 多模块构建人工分辨率与单个构建?
我在我的项目中观察到以下maven行为,这对我来说没有意义。这就是正在发生的事情的本质 假设我有一个包含两个模块的项目Java 多模块构建人工分辨率与单个构建?,java,maven,maven-3,Java,Maven,Maven 3,我在我的项目中观察到以下maven行为,这对我来说没有意义。这就是正在发生的事情的本质 假设我有一个包含两个模块的项目 com.example.foo.jar jarbar依赖于foo 两者共享一个包含maven模块的公共父项目 当我的local.m2为空,因此未安装foo和bar时 在project/目录中mvn clean验证工作正常并且构建成功 在bar/目录中mvn initialize不起作用,我收到一条错误消息,说maven无法解析bar对foo的依赖关系 那么,当我从项目文
- com.example.foo.jar
- jarbar依赖于foo
- 两者共享一个包含maven模块的公共父项目
- 在
目录中project/
工作正常并且构建成功mvn clean验证
- 在
目录中bar/
不起作用,我收到一条错误消息,说maven无法解析bar对foo的依赖关系mvn initialize
project/
pom.xml
foo/
pom.xml
bar/
pom.xml
我试图避免这里讨论的
mvn安装
hack您可以在reactor中构建子模块:
mvn -pl bar package -am
您还需要包含-am
来构建foo
,否则Maven将无处获得foo
的jar
有关更多详细信息,请参阅。项目pom是否将foo作为版本的依赖项包含?@jtahlborn是的依赖项是显式的,因此bar在bar pom.xml中对foo具有显式依赖项,版本号设置为${project.version}包括pom中的相关部分(模块和依赖项)