如何知道maven android项目中任何外部jar的groupid和artifactid

时间:2014-08-11 07:26:43

标签: android maven

我正在开发基于maven的android项目。我需要将libs文件夹的所有jar文件添加到maven本地存储库中,因为maven中央存储库中没有许多jar文件。 为此,我将使用以下命令。但我的问题是如何从任何外部jar获取group-id,artifact-id。
假设我在这种情况下有picasso.jar我不会 也知道版本。

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

Where:<path-to-file>  the path to the file to load
   <group-id>      the group that the file should be registered under
   <artifact-id>   the artifact name for the file
   <version>       the version of the file
   <packaging>     the packaging of the file e.g. jar

请帮帮我。

先谢谢

2 个答案:

答案 0 :(得分:11)

.jar没有工件ID。你在mvn install时给他们一个。 例如,让我们对你的案例进行picasso.jar

mvn install:install-file
-Dfile=<path-to-your-picasso.jar>
-DgroupId='com.square'
-DartifactId='picasso'
-Dversion=<version-given-by-you-(better using original picasso.jar version)>
-Dpackaging=<packaging>
-DgeneratePom=true

然后在项目中使用时,需要使用此信息添加依赖项。

答案 1 :(得分:0)

我创建了一个脚本,可以帮助你建立的pom.xml依赖标签,如果你有一个完整的罐子的文件夹中。

要发现该信息的脚本执行以下操作:

  1. 它首先在罐子中查找META-INF / maven /
  2. 然后它尝试通过search.maven.org上的SHA1校验和搜索jar
  3. 然后最后它把评论与有关的jar清单信息的pom.xml,以帮助您寻找自己的依赖。当然,你可能找不到罐子任何地方,那么你就必须将主机它在自己的私人Maven仓库。

您可以在这里获取它:https://github.com/sjbotha/make-pom/