我正在尝试读取maven存储库的给定目录中工件的名称。
我想知道如何阅读名称示例...... abbot,aceqisecurity,activiation等。
我不确定使用哪个库或如何读取名称?任何帮助,将不胜感激!
编辑:
我实际上已经注意到我说错了这个问题!当我问如何读取名称时,我的意思是如何通过将库/工件名称放在列表/数组中来读取名称。所以我不确定用什么库来实际读取存储库。希望我澄清一下。
答案 0 :(得分:1)
Maven存储库通常包含Java库(Maven称为工件)。 工件按groupId,artifactId和版本排序。
groupId
与包名类似,通常以 com , org 或 net (如主机名)开头。 groupId由点分隔。每个部分都将通过文件夹进行映射。
artifactId
是图书馆的名称。为它创建一个文件夹。
version
是库的版本号。同样,每个版本的库都有自己的文件夹。
让我们举一个例子来自Apache Commons的库commons-email 1.3.1。
groupId为org.apache.commons
,artifactId为commons-email
,版本为1.3.1
。
因此对于这个库,在Maven存储库中你会发现:
org
|- apache
|- commons
|- commons-email
|- 1.3.1
|- commons-email-1.3.1.jar
|- commons-email-1.3.1.jar.asc
|- commons-email-1.3.1.pom
|- commons-email-1.3.1.pom.asc
基于此,您可以看到 abbot , acegisecurity 和激活是{{的开始(或整个部分) 1}}一个或多个库。
您可以在此处浏览Maven中央存储库: http://search.maven.org/#browse
答案 1 :(得分:0)
在Maven中,您可以通过三个标识符识别任何库:groupId
,artifactId
和version
。根据这些名称,您可以在此位置找到该库:/mavenRepo/groupId/artifactId/version/groupId-version.jar
。提到名字有'。'在groupId中,它们被认为是在不同的目录中。
我们举一个例子:
<groupId>org.springframework</groupId>
<artifactId>spring-orm</artifactId>
<version>3.2.2.RELEASE</version>
此依赖关系将保存在以下路径中:maven-local-repo/org/springframework/spring-orm/3.2.2.RELEASE/spring-orm-3.2.2.RELEASE.jar
。