我们是否必须安装/部署父maven模块才能使用子模块?

use*_*545 1 maven-2

假设我们有一个ParentPom.xml,它下面有子子模块; subModule-A和subModule-B.我想在另一个项目中使用subModule-A.jar.如果我只在subModule-A目录中运行"mvn install"命令,我可以将它安装到我的M2存储库中,但是在我从其他项目中定义依赖项之后,它会说"没有找到subModule-A的父项".如果我为ParentPom.xml运行install命令,则可以.

对这个问题有什么想法吗?

谢谢...

Sea*_*oyd 5

您需要安装/部署子模块A引用的所有模块,包括父模块.

你可以这样做:

mvn deploy -pl submodule-a -am
Run Code Online (Sandbox Code Playgroud)

这转化为

  • 部署模块子模块(-pl submodule-a)
  • 以及它在当前reactor项目中的所有依赖项(-am)

调用mvn -help以查看所有可能的命令行选项