题
当我尝试使用 Maven 2 手动安装工件时,遇到了一些错误。我想使用以下命令从本地目录安装 jar
mvn install:install-file -Dfile=jta-1.0.1B.jar
但是 Maven 给出了一个构建错误,内容如下:
Invalid task '.01B.jar': you must
specify a valid lifecycle phase, or a
goal in the format plugin:goal or
pluginGroupId:pluginArtifactId:pluginVersion:goal
我的命令有错误吗?
解决方案
您需要指出的groupId的的artifactId和版本为您的神器:
mvn install:install-file \
-DgroupId=javax.transaction \
-DartifactId=jta \
-Dpackaging=jar \
-Dversion=1.0.1B \
-Dfile=jta-1.0.1B.jar \
-DgeneratePom=true
其他提示
据行家的指南安装第三方JAR文件,该命令是:
mvn install:install-file -Dfile=<path-to-file> -DgroupId=<group-id> \
-DartifactId=<artifact-id> -Dversion=<version> -Dpackaging=<packaging>
您确实需要包装选项。这回答了原来的问题。
现在,在你的背景,你与Sun提供一个罐子战斗你应该阅读与Sun的JAR 页面应对太。在这里,您将学习如何帮助行家为您提供更好的信息有关Sun罐子的位置,以及如何添加Java.net的 Maven 2的库,其的包含强> jta-1.0.1B.jar
。在您的<击>将此settings.xml
(不可移植)或击> pom.xml
(便携式):
<repositories>
<repository>
<id>maven2-repository.dev.java.net</id>
<name>Java.net Repository for Maven</name>
<url>http://download.java.net/maven/2/</url>
<layout>default</layout>
</repository>
</repositories>
我不得不添加包装,这样:
mvn install:install-file \
-DgroupId=javax.transaction \
-DartifactId=jta \
-Dversion=1.0.1B \
-Dfile=jta-1.0.1B.jar \
-DgeneratePom=true \
-Dpackaging=jar
如果您使用Windows PowerShell时曾经得到类似的错误,你应该尝试Windows的简单的命令行。我没有发现什么造成这一点,但似乎PowerShell的解释某些Maven的参数。
所有发布的答案都从严格的专家角度正确地讨论了这个问题。我的问题是使用 Netbeans 作为我的主要 IDE 为 Maven 进行安装。我发现下面的文章很有帮助。
归功于以下 Netbeans 论坛文章: http://forums.netbeans.org/topic22907.html
- 在 Maven 项目中打开“添加依赖项”对话框
- 编一些groupId、artifactId和version并填写,OK。
- 依赖项将添加到pom.xml,并将出现在Maven项目的“库”节点下
- 右键单击的lib节点并“手动安装工件”,填充通往罐子的路径。JAR应安装到本地Maven Repo,并在步骤2中输入坐标)
不隶属于 StackOverflow