7

これは他の質問 (このようなもの) と似ていますが、最新の API でこれを実行できるようにしたいと考えています。maven-dependency-plugin:tree verbose オプションは廃止され、最新 (2.5.1) コードでは何もしないため、その方法の良い例はありません。

4

2 に答える 2

5

jcabi -aetherの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
);

Mavenプラグインの外部にいる場合:

File repo = new File("/tmp/local-repository");
MavenProject project = new MavenProject();
project.setRemoteProjectRepositories(
  Arrays.asList(
    new RemoteRepository(
      "maven-central",
      "default",
      "http://repo1.maven.org/maven2/"
    )
  )
);
Collection<Artifact> deps = new Aether(project, repo).resolve(
  new DefaultArtifact("junit", "junit-dep", "", "jar", "4.10"),
  "runtime"
);

必要な依存関係は次のとおりです。

<dependency>
  <groupId>com.jcabi</groupId>
  <artifactId>jcabi-aether</artifactId>
  <version>0.7.5</version>
</dependency>
于 2013-01-01T07:19:42.803 に答える