![](/img/trans.png)
[英]The parameters 'file' for goal org.apache.maven.plugins:maven-install-plugin:2.5.2:install-file are missing or invalid
[英]Maven Install plugin: parameter file is missing or invalid
我有一个本地jar,我想在我的项目中使用它。 有很多方法可以做到:只需手动安装到本地仓库,使用父pom中的脚本,使用系统范围,使用本地repo声明。
我决定使用Maven Install插件将jar安装到repo中。 这是一个配置:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-install-plugin</artifactId>
<version>2.3.1</version>
<executions>
<execution>
<phase>initialize</phase>
<goals>
<goal>install-file</goal>
</goals>
<configuration>
<groupId>jacob</groupId>
<artifactId>jacob</artifactId>
<version>1.0</version>
<packaging>jar</packaging>
<file>${basedir}\lib\jacob.jar</file>
</configuration>
</execution>
</executions>
</plugin>
我尝试以多种方式运行它: mvn初始化安装:install-file mvn initialize mvn install:install-file
但是我一直有例外:
[错误]无法执行目标org.apache.maven.plugins:maven-install-plugin:2.3.1:项目上的install-file(default-cli)MYPROJECTNAME:目标org.apache.maven的参数'file'。插件:maven-install-plugin:2.3.1:安装文件丢失或无效 - >
我只想找出它为什么不起作用? 看起来我被阶段和目标弄糊涂了..
最后,我采用了另一种方式:我将它放入我的父POM中,但为什么它与父母一起使用并且不能与孩子一起工作?
处理分离jar的最佳方法是开始使用存储库管理器,并通过UI将此jar安装到存储库管理器中。 从那时起,您可以将其用作通常的依赖项。 让生活更轻松。
如果您想将它作为构建的一部分安装,您尝试过这意味着您需要像这样调用maven:
mvn package
你不应该将没有生命周期的调用目标混淆,例如install:install-file
其中生命周期部分为initialize
。
这就是为什么你得到描述的错误消息,导致命令行部分需要你在命令行上没有给出的必需参数 。
组合如:
mvn install:install-file initialize
让Maven毫无意义(rarly)。 你已经将maven-install-plugin绑定到pom中的life-clycle,所以你应该简单地调用life cylce:
mvn initalize
你会得到类似以下的东西:
[INFO] ------------------------------------------------------------------------
[INFO] Building test 0.6-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-install-plugin:2.3.1:install-file (default) @ test ---
[INFO] Installing /home/mvntest/lib/jdom-1.0.jar to /home/.m2/repository/com/soebes/test/jacob/1.1/jacob-1.1.jar
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.780s
[INFO] Finished at: Sat Oct 25 12:19:30 CEST 2014
[INFO] Final Memory: 6M/91M
[INFO] ------------------------------------------------------------------------
但是:我不得不说像你一样安装一件神器是不好的做法。 最好是使用像Nexus , Artifactory或Archiva这样的存储库管理器,或者如果真的不喜欢存储库管理器(我不明白为什么,但这是一个不同的故事)你可以使用Stephen Connolly的非maven-jar-maven-插入
除上述所有内容外,您应该使用更新的maven-install-plugin版本,当前版本号为2.5.2
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.