1

我一直在尝试开发一个相对简单的应用程序(用作自定义构建过程的前导),它将处理一些 POM 并提前(transitevely)从远程 repo 解决所有依赖项。

我已经成功地从 POM 中提取了各种属性(我正在其他地方使用),但是依赖解析被证明是相当困难的。

我已经尝试使用来自 org.apache.maven 的各种类,并且还研究了 Aether。我已经在网上倾注了许多关于使用 org.apache.maven 解决依赖关系的资源,但是它们似乎都涵盖了 Maven 插件(它通过注释连接到 Plexus 容器中)而不是一个独立的应用程序,我不 [相信我] 可以访问该容器,因此无法使用我需要的各种对象,例如 ArtifactResolver 或 ArtifactRepositoryFactory。

有没有办法在不作为 Maven 的一部分执行时获取 Plexus 容器?如果是这样,是否有任何好的资源来解释这一点?如果没有,是否有任何不需要 Plexus 容器的关键类的实现?

4

2 回答 2

2

两个可以回答您问题的开源项目是IvyLeiningen。两者都连接到 maven repos 进行依赖管理,但似乎不使用 maven 命令行。请注意,Leiningen 是针对 Clojure 项目的,所以如果您不了解 Clojure,可能很难理解。我从来没有看过它的来源。据我所知,它是用 Java 编写的。

于 2013-06-05T19:49:18.657 回答
1

看看Eclipse Aether,有一个例子就是这样做的。

于 2014-10-31T10:22:52.793 回答