我正在尝试将maven与旧式Java项目集成以管理依赖项。
要简单地下载罐子,我可以使用
mvn dependency:get -DrepoUrl=https://mvnrepository.com -Dartifact=artifactId:groupId:version
但是由于一些产品的挑战,我需要自己将这些罐子添加到classPath中。因此,如果有某种工具/解决方案可以帮助自动获取这些细节。就像所有罐子作为特定pom.xml的一部分下载一样
示例:我可以使用
在java代码中运行上面的命令Runtime.exec()
自己解析输出,但我想知道是否有更好的方法而不是我解析所有这些。
另外,请建议我处理这种情况的更好方法。
PS:我无法使用任何工具等将项目转换为Maven项目(因为我会改变项目的结构)而不是我自己也有类似的行为
我发现我可以使用maven-embedder.jar,但我找不到多少帮助。我只想用于下载依赖项,即我的命令就像下面这样:
mvn test dependency:build-classpath -f "C:\Users\Desktop\My_Pom.xml" -DoutputDirectory="C:\ProgramData\MyDirectoeyRepository"
我怎么能这样做?
答案 0 :(得分:1)
我不确定我是否理解正确,但使用dependency:copy-dependencies
(https://maven.apache.org/plugins/maven-dependency-plugin/copy-dependencies-mojo.html)您可以将给定pom的所有依赖项下载到给定目录。
这允许您将它们放在某个java项目的类路径中。
答案 1 :(得分:1)
我最终使用了Maven-Embedder的MavenCli课程。