首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Maven使用反应器选项-pl构建第二个level+子项目

Maven使用反应器选项-pl构建第二个level+子项目
EN

Stack Overflow用户
提问于 2014-04-15 13:37:41
回答 3查看 20.8K关注 0票数 19

我的maven项目结构如下

代码语言:javascript
运行
复制
Project A 
  pom.xml
  - ProjectB
    pom.xml
    - ProjectC
      pom.xml
    - ProjectD
      pom.xml
  - ProjectY
    pom.xml

通过使用maven reactor选项,我可以

clean install -pl projectBclean install -pl projectY

但在尝试使用clean install -pl projectC构建第二级子模块时,maven抛出

代码语言:javascript
运行
复制
org.apache.maven.MavenExecutionException: Could not find the selected project in the reactor: projectC

如何使用maven反应器选项构建第二个level+子模块

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-04-15 14:45:23

-pl选项的文档中,它说明了以下内容:

代码语言:javascript
运行
复制
-pl,--projects <arg>                Comma-delimited list of specified
                                    reactor projects to build instead
                                    of all projects. A project can be
                                    specified by [groupId]:artifactId
                                    or by its relative path.

对你来说最重要的部分是:“或者通过它的相对路径”。

因此,要构建projectC,只需通过它的相对路径(projectB/projectC)来引用它。所以你需要的命令是:

代码语言:javascript
运行
复制
mvn clean install -pl projectB/projectC
票数 37
EN

Stack Overflow用户

发布于 2019-02-14 17:33:05

这是一个类似问题的answer,在这里也是相关的。

通过使用artifactIds,您不必了解项目的结构。

如果您只使用给定项目的artifactIds,则必须在命令行上正确定义它:

Maven的帮助输出(mvn --help)

要构建的所有项目的指定反应堆项目的

逗号分隔列表。项目可以通过groupId:artifactId或其相对路径指定

这意味着在您的情况下,您必须定义:

代码语言:javascript
运行
复制
mvn clean install --projects :projectC,:ProjectY

请注意,artifactIds前面的:表示您省略了groupId

票数 3
EN

Stack Overflow用户

发布于 2019-01-08 19:05:39

以防其他人也有这个:

我也遇到了这个错误消息。原因是我意外地在终端路径中的一个(子)模块中。

当然,该命令必须在项目的根层次结构中执行。根据上面的示例,您必须确保执行如下命令:

代码语言:javascript
运行
复制
clean install -pl projectB
at Poject A

例如,在ProjectY或项目结构中其他更深的地方。

正确:

代码语言:javascript
运行
复制
user:~/workspace/IdeaProjects/pojecta{master}$ clean install -pl projectB

错误:

代码语言:javascript
运行
复制
user:~/workspace/IdeaProjects/pojecta/projecty{master}$ clean install -pl projectB
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23075415

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档