Tag: aether

如何以编程方式使用maven下载jar

我正在编写一个应用程序,要求我下载一个给定mavens groupid / artifactid / version的jar。 我目前开始 public Model pomToModel(String pomUrl) throws Exception { URL url = new URL(pomUrl); InputStream stream = url.openStream(); try { Model model = new MavenXpp3Reader().read(stream); return model; } finally { stream.close(); } } 所以给定POM的url,我现在有maven Model对象来表示它。 这似乎运作良好。 我想知道的是两件事: 找到模型在maven插件将使用的maven存储库中表示的jar工件的url 给定模型,在本地存储库中找到表示jar的文件 我已经有质量差的解决方案:我去mvnrepository.com手动编码url,我使用〜/ .m2 / repository作为文件的前缀。 我显然可以改进这个解决方案,但是我最终会很难复制经过良好测试并在maven代码库中使用的代码。 我真的很想知道如何使用maven类来做到这一点。 我已经做了相当多的谷歌搜索,但搜索有关maven和jar的任何东西(甚至在stackoverflow上)的有趣的事情是我找到了很多关于如何使用maven的解决方案,而不是如何使用maven类进行编码。 谢谢您的帮助

使用Aether获取MavenProject的所有依赖项(包括可传递的)

如何使用Aether获取MavenProject(包括传递的)的所有依赖项? 我已经看到了许多你指定gav例子,它解析了工件及其所有的依赖关系。 这一切都很好。 但是,如果您的插件应该从您尝试解决的依赖项的同一个项目中调用,那么这似乎不起作用(或者我做错了)。 有人可以给我一个如何做的工作实例吗? 我已经尝试过使用此SOpost中显示的jcabi-aether的示例。

如何以编程方式构建pom文件的有效模型?

我将以编程方式从pom文件创建有效模型,以获取pom模型实例中的所有inheritance属性。 我会分析一个pom的一些属性 – 但我需要它的所有属性 – 包括。 inhertied。 我该怎么办? 我试过Sonatype Aether,但我找不到一个例子。

以编程方式解析插件之外的Maven依赖关系 – 获取RepositorySystemSession和RepositorySystem

也许这将是一个比我原先想象的更大的任务,但无论如何,我正在尝试从文件加载MavenProject然后解决它的依赖关系。 我有两个位的代码,但我缺少一些我需要的对象引用; 特别是我需要获取RepositorySystemSession和RepositorySystem实例。 有小费吗? 注意:我用maven-plugin标记了这个问题,但这不是Maven插件。 我很高兴要求Maven 3(不管怎么说我已经有了……) 这是我到目前为止的代码: 构建MavenProject : public static MavenProject loadProject(File pomFile) throws Exception { MavenProject ret = null; MavenXpp3Reader mavenReader = new MavenXpp3Reader(); if (pomFile != null && pomFile.exists()) { FileReader reader = null; try { reader = new FileReader(pomFile); Model model = mavenReader.read(reader); model.setPomFile(pomFile); ret = new MavenProject(model); } finally […]

如何使用以太网从Java中找到最新版本的maven工件?

他们的文件非常简陋,我无法弄清楚。 我在这里找到了部分答案,但它没有所有代码。 如何使用以太网从Java中找到最新版本的maven工件?