我正在尝试检索整个依赖关系树及其从项目根部开始的 pom。我从文件系统中已经存在的 POM 开始,但我不确定如何从存储库中检索依赖项 pom。
我正在使用以下代码来访问依赖项列表。从列表中我获得了有关文物的所有信息。我只是不确定如何访问存储库。
FileReader reader = null;
Model model = null;
MavenXpp3Reader mavenreader = new MavenXpp3Reader();
File pomfile = new File("pom.xml");
model.setPomFile(pomfile);
MavenProject project = new MavenProject(model);
List<Dependency> deps = project.getDependencies();
// Get dependency details
for (Dependency d: deps) {
System.out.print(d.getArtifactId());
System.out.print(":");
System.out.println(d.getVersion());
}
实际上,您已经非常接近阅读依赖项了。所缺少的是:
Model model = mavenreader.read(new FileReader(pomFile));
完整示例:
MavenXpp3Reader mavenreader = new MavenXpp3Reader();
File pomfile = new File("pom.xml");
Model model = mavenreader.read(new FileReader(pomFile));
List<Dependency> deps = model.getDependencies();
for (Dependency d: deps) {
System.out.print(d.getArtifactId());
}
这不会为您提供依赖关系树,但您可以对找到的依赖关系重复它。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)