Tag: 以太

如何使用API​​ 3.1.1在Maven插件中使用Aether(eclipse)?

我正在使用API​​ v3.1.1开发一个新的Maven插件,因为我需要升级到Maven 3.1.1,并且需要以Aether的方式处理工件存储库,以及检索工件版本的完整列表。 我正在使用Eclipse Aether(0.9.0.M4),而不是 Sonatype Aether。 我已经通过http://wiki.eclipse.org/Aether阅读并尝试了演示http://git.eclipse.org/c/aether/aether-demo.git/tree/ ,但我还没能理解为什么AbstractMojo的子类中的以下内容不起作用。 RepositorySystem repoSystem , RepositorySystemSession repoSession , List projectRepos和List pluginRepos都为null 。 我也尝试使用@Component来注入具有相同结果的那些。 有什么我错过了,以便将这些物体注入魔力? import org.eclipse.aether.RepositorySystem; import org.eclipse.aether.RepositorySystemSession; import org.eclipse.aether.repository.RemoteRepository; … public MyMojo extends AbstractMojo { /** * The entry point to Aether, ie the component doing all the work. * * @component */ private RepositorySystem repoSystem; /** […]

以编程方式获取Maven工件

我正在寻找一个Java API,可用于从远程存储库中检索Maven工件。 到目前为止,我已经找到了Eclipse Ather ,但它看起来因为我的需求而变得复杂,所以我正在寻找更简单的东西。 我需要的是: 我必须指定远程Maven存储库的位置 我喜欢基于它的groupId + artifactId +版本来获取工件 API必须提供工件的当前远程版本(考虑定期构建的SNAPSHOT工件,以便它们在其版本中具有生成的部分) 返回工件的位置,首选HTTP URL(我将使用例如Apache HTTP Client自己获取它) 可选地,检索作为所请求的工件的依赖项的工件。