maven安装插件:安装子模块jar文件

maven安装插件:安装子模块jar文件,maven,maven-plugin,pom.xml,Maven,Maven Plugin,Pom.xml,我有一个包含六个子模块的聚合项目。构建都可以工作,但是当我尝试mvn install:install文件时,我只得到顶级pom。我还尝试了mvn install:install,但遇到错误“无法覆盖目标:install:install中的只读参数:打包” 我在所有子模块中都指定了安装插件 父POM: org.apache.maven.plugins maven安装插件 2.3.1 pom.xml com.pillardata ${project.artifactId} ${project.ve

我有一个包含六个子模块的聚合项目。构建都可以工作,但是当我尝试mvn install:install文件时,我只得到顶级pom。我还尝试了mvn install:install,但遇到错误“无法覆盖目标:install:install中的只读参数:打包”

我在所有子模块中都指定了安装插件

父POM:


org.apache.maven.plugins
maven安装插件
2.3.1
pom.xml
com.pillardata
${project.artifactId}
${project.version}
聚甲醛
儿童POM:


org.apache.maven.plugins
maven安装插件
2.3.1     
${project.build.directory}/${project.artifactId}-${project.version}.jar/
com.pillardata
${project.artifactId}
${project.version}
罐子
其他人似乎有这样的工作,但经过几个小时的研究和尝试我能想到的一切(合理的),我已经走到了死胡同

想法


另外,这是maven 2.2.1。

您必须继承子项目中的父pom,并将父项目中的子项目指定为“模块”。请参见[POM][1]

您必须继承子项目中的父POM,并将父项目中的子项目指定为“模块”。参见[POM][1]

我不确定我是否完全理解你的问题,所以就在这里

您有一个包含一些模块的项目,如下所示:

A | +-- B | +-- C A. | +--B | +--C 您需要在maven本地存储库中“安装”每个模块的工件。然后,您只需运行:
mvn安装

您可以从任一(子)模块运行此操作,整个子树都将被安装。如果要单独安装它们(即防止在每个子模块上调用命令),则可以使用
-N
标志:
mvn安装-N


应该不需要定义任何东西来为maven项目安装工件。

我不确定我是否完全理解您的问题,所以就在这里

您有一个包含一些模块的项目,如下所示:

A | +-- B | +-- C A. | +--B | +--C 您需要在maven本地存储库中“安装”每个模块的工件。然后,您只需运行:
mvn安装

您可以从任一(子)模块运行此操作,整个子树都将被安装。如果要单独安装它们(即防止在每个子模块上调用命令),则可以使用
-N
标志:
mvn安装-N


应该不需要定义任何东西来为maven项目安装工件。

我假设您在问题中所称的父POM和子POM只是实际POM的一部分,对吗?我假设您在问题中所称的父POM和子POM只是实际POM的一部分,对吗,我可以成功地构建和jar所有的东西,只是安装到本地的.m2/存储库对我来说非常重要。是的,我可以成功构建和jar所有的东西,只是安装到本地的.m2/存储库对我来说非常重要。是的,这就是我模块的布局。一个打包为pom的父模块和6个打包为JAR的子模块。当我执行mvn安装:安装时,我在第一个子模块上出现此错误:“错误:无法覆盖只读参数:打包在目标:安装:安装”无论子模块中是否有插件节。(我尝试使用节来指定新的打包类型。)如果我使用mvn install:install文件,我会安装pom,但没有子模块。如果我显式地将cd放入子模块树中并在那里运行一个mvn install:install文件,那么只要子模块的pom.xml文件中有指向我的jar文件和pom文件的节,它就会成功。您不想/不需要调用
mvn install:install
,而只需调用
mvn install
…是的,这就是我模块的布局。一个打包为pom的父模块和6个打包为JAR的子模块。当我执行mvn安装:安装时,我在第一个子模块上出现此错误:“错误:无法覆盖只读参数:打包在目标:安装:安装”无论子模块中是否有插件节。(我尝试使用节来指定新的打包类型。)如果我使用mvn install:install文件,我会安装pom,但没有子模块。如果我显式地将cd放入子模块树中,并在那里运行一个mvn install:install文件,只要子模块的pom.xml文件中有指向我的jar文件和pom文件的节,它就会成功。您不想/不需要调用
mvn install:install
,只需调用
mvn install