繁体   English   中英

Maven Install插件:参数文件丢失或无效

[英]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] ------------------------------------------------------------------------

但是:我不得不说像你一样安装一件神器是不好的做法。 最好是使用像NexusArtifactoryArchiva这样的存储库管理器,或者如果真的不喜欢存储库管理器(我不明白为什么,但这是一个不同的故事)你可以使用Stephen Connolly的非maven-jar-maven-插入

除上述所有内容外,您应该使用更新的maven-install-plugin版本,当前版本号为2.5.2

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM