[英]How to compile a single module inside it in a multi-module maven project?
这是该项目的外观:
moduleA
-pom.xml
moduleB
-pom.xml
moduleA对moduleB有依赖性。 我在父pom.xml中设置了<modules>
,在子pom.xmls中设置了其他配置。 而且我可以在父目录中运行mvn package
,但是每次我在moduleA目录中运行mvn package
都会失败。
我知道在父目录中运行mvn package -pl moduleA
可以解决此问题。 由于Apache Flume允许我在其自己的目录中编译任何模块,所以为什么我的项目不能?
代替启动目标“包”,而是在根pom(或仅是moduleB)上启动目标“安装”。 这会将moduleB放置在本地存储库(〜/ .m2 / repository)中,当Maven仅编译moduleA时,它将能够获取它。 然后,您将只能编译moduleA。
我遇到了这个问题: Maven会话未声明顶级项目
当我尝试通过命令行运行一个模块时,例如: mvn clean install -pl moduleA
在寻找父模块的地方,因此,我尝试了此方法,并与: mvn clean install -pl .,moduleA
一起使用您的情况下,您可以尝试此假设mvn clean install -pl .,moduleA --also-make
是依赖关系已经在Maven mvn clean install -pl .,moduleA --also-make
建立并且可用,否则mvn clean install -pl .,moduleA --also-make
应该可以工作。 这将在多模块Maven项目和我们指定的“。”中仅构建一个特定项目。 它会建立父pom来解决问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.