如何在maven中包含第三方jar?

时间:2014-02-19 21:14:35

标签: java maven adobe-analytics

我有OmnitureAPI.jar,我在mvn repo中找不到它。因此,虽然我将使用以下命令自己包含它,我在网上找到了描述我目前面临的类似问题的命令。

mvn install:install-file -Dfile=c:\kaptcha-{version}.jar -DgroupId=com.google.code -DartifactId=kaptcha -Dversion={version} -Dpackaging=jar

我有两个问题: 1)我所包含的jar是否需要遵循maven命名和包装约定(例如类)应该在src / main / java等中? 2)在执行上面的命令时,我应该放入-DgroupId = xxxx和-DartifactId = xxx?

请指导

1 个答案:

答案 0 :(得分:1)

这是Guide to installing 3rd party jars.

如果它不是maven制造的jar并且没有pom.xml,你需要自己指定这些东西:

mvn install:install-file -Dfile=<path-to-your-jar> -DgroupId=<make-up-a-group-id> \
-DartifactId=<make-up-an-artifact-id> -Dversion=<specify-a-version> -Dpackaging=jar

执行此操作的最佳方法是使用jar中包含的pom.xml文件(如果存在)。我最近必须这样做,这是我使用的命令:

mvn install:install-file -Dfile=./elasticsearch-river-jdbc-0.90.3.1.jar

如果找不到POM,您可能需要手动将Mvn指向POM:

mvn install:install-file -Dfile=elasticsearch-river-jdbc-0.90.3.1.jar -DpomFile=./META-INF/maven/org.xbib.elasticsearch.plugin/elasticsearch-river-jdbc/pom.xml

如果jar中没有pom.xml,并且不存在组ID或工件ID,则可以自行构建;但是在引用JAR时需要使用相同的参数。