在本地存储库中安装第三方jar需要pom文件配置吗?

时间:2014-05-01 17:32:44

标签: java maven

我制作了一些jar文件(在CMD中使用java和jar命令)但是当我尝试通过以下命令将它们安装在本地目录中(以便将其用作本地maven存储库)时:

 mvn install:install-file -Dfile=<path-to-file> -DgroupId=<group-id> DartifactId=<artifact-id> -Dversion=<version> -Dpackaging=<packaging> 

但是maven给了我以下错误:

The goal you specified requires a project to execute but there is no POM in this directory

这意味着这个命令需要一个pom文件,但是哪个pom文件(我需要再次使用maven重新打包我的代码!)

2 个答案:

答案 0 :(得分:0)

首先转到maven conf / settings.xml并定义您的本地仓库位置:

Repository>E:/repo2/</localRepository>

然后去CMD并输入:

mvn install:install-file -Dfile=<path-to-file> -DgroupId=<group-id> DartifactId=<artifact-id> -Dversion=<version> -Dpackaging=<packaging>

注意:因为在这种情况下你没有任何pom。你应该定义所有必要的参数(groupid,artifactid,包装和版本),否则你会得到一个例外。

注意:如果您的字符串中包含空格,则需要用双引号(“”)将其包围。

另请注意,您可以通过参数(-DlocalRepositoryPath)显式地告知本地存储库的位置。

如果以上配置不起作用,您可以将所有配置信息保存在pom文件中并明确引用它,如下所示:

mvn install:install-file -Dfile=<path-to-file>  -DpomFile=<path to pom file>

答案 1 :(得分:0)

我建议不要用Java构建jar,而是使用maven来构建和安装它。

1)设置一个新的简单Maven项目

mvn archetype:create -DgroupId=yourProject -DartifactId=yourProjectsArtifactID -DarchetypeArtifactId=maven-archetype-quickstart

http://maven.apache.org/plugins-archives/maven-archetype-plugin-1.0-alpha-7/examples/simple.html

2)将jar的Java源代码放入生成的文件夹中:   ... \ yourProjectsArtifactID \ SRC \主\ java中

3)如果需要,声明代码的依赖关系 在将其编译到 ... \ yourProjectsArtifactID 中的POM.xml时,应将其包含在类路径中。您可以通过在文本编辑器中打开它并复制您希望在类路径中拥有的每个jar的现有条目来完成此操作。将范围标记中的值更改为编译或将其删除。

<dependency>
  <groupId>junit</groupId>
  <artifactId>junit</artifactId>
  <version>3.8.1</version>
</dependency>

4)编译并安装你的jar

运行

mvn clean install

在pom.xml所在的文件夹中:&#34; ... \ yourProjectsArtifactID&#34;: