0

我已经在Maven User List中询问过,让我在这里复制一下。

我正在尝试创建一个应用程序,它将在 Maven 之外下载和使用 Maven 工件。我认为在这种情况下,最聪明的方法是使用 Maven 已经存在的类。谁能帮我提示在哪里寻找?

让它以这种方式工作会很好:

Repository rep = new Repository("~/.m2"); 
Artifact artifact = new Artifact("com.example", "foo", "1.0"); 
String path = rep.resolve(artifact); 
assert path.equals("~/.m2/repository/com/example/foo/1.0/foo.jar"); 

我正在使用 Maven 3。

4

2 回答 2

2

Aether正是我所需要的。

编辑:几周前,我创建了一个开源工具来简化与 Aether 的交互:jcabi-aether。现在它就像(在 Maven 插件中)一样简单:

File repo = this.session.getLocalRepository().getBasedir();
Collection<Artifact> deps = new Aether(this.getProject(), repo).resolve(
  new DefaultArtifact("junit", "junit-dep", "", "jar", "4.10"),
  JavaScopes.RUNTIME
);
于 2011-03-14T15:22:39.810 回答
0

你有没有看过常春藤,看看它是否符合你的需要?

于 2011-03-14T08:42:30.223 回答