请问有没有可以从pom文件中检索maven依赖项的java库?任何不需要从mvn命令中检索输出的内容。谢谢
n3schb8v1#
好吧,你应该分析 pom.xml 任何您选择的xml解析器。然后通过以下算法构造到maven中央存储库的链接:1。组id中的每个包都转换为一个文件夹:示例:
pom.xml
<groupId>org.foo.bar</groupId> ==> org/foo/bar
项目名称也是一个文件夹,并将其附加到组id中:示例:
<artifactId>some-artifact</artifactId> ==> org/foo/bar/some-artifact
版本也变为文件夹:示例:
<version>1.2.3</version> ==> org/foo/bar/some-artifact/1.2.3
现在将jar名称构造为“articatid version.jar”,并将其附加到链接中。预先设置存储库,您将获得完整的工作路径。下面是一个实际的工作示例:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot</artifactId> <version>2.2.4.RELEASE</version> </dependency>
转换为:
https://repo1.maven.org/maven2/org/springframework/boot/spring-boot/2.2.4.RELEASE/spring-boot-2.2.4.RELEASE.jar
另外,如果您想要一些可以处理依赖项的库而不想调用maven,可以看看apacheivy
nafvub8i2#
谢谢。我用了mavenproject库。很直截了当。我还使用mavenxppreader获取传递给mavenproject()的模型。剩下的问题是调用正确的方法。
2条答案
按热度按时间n3schb8v1#
好吧,你应该分析
pom.xml
任何您选择的xml解析器。然后通过以下算法构造到maven中央存储库的链接:1。组id中的每个包都转换为一个文件夹:示例:
项目名称也是一个文件夹,并将其附加到组id中:示例:
版本也变为文件夹:示例:
现在将jar名称构造为“articatid version.jar”,并将其附加到链接中。
预先设置存储库,您将获得完整的工作路径。
下面是一个实际的工作示例:
转换为:
另外,如果您想要一些可以处理依赖项的库而不想调用maven,可以看看apacheivy
nafvub8i2#
谢谢。
我用了mavenproject库。很直截了当。我还使用mavenxppreader获取传递给mavenproject()的模型。剩下的问题是调用正确的方法。