Andrew Logvinovが既にコメントしたように、Maven プラグインは追加のアーティファクトを添付できます。したがって、実際にプロジェクトをビルドし、ライフサイクル フェーズにバインドされたすべてのプラグインを実行しなければ、これは可能ではないと思いますpackage
。
これを行う既存のプラグインについては知りません。おそらく、実際のデプロイを一時ディレクトリに実行してから、含まれているファイルを一覧表示することになるでしょう。install
これを行っている間にローカル リポジトリを変更しないようにするには、フェーズを回避する必要があります。フェーズはのverify
直前install
に発生し、展開モジョを明示的に呼び出すことができます。
deploy プラグインを使用すると、次のようにファイル URL を使用して代替リポジトリを指定できます。
mvn verify deploy:deploy -DaltDeploymentRepository=snapshots::default::file:///home/jh/Temp/repository
添付されたすべての成果物をリストする Maven プラグインの最も単純な実装は、次のようになります。
/**
* @goal list-artifacts
* @phase verify
*/
public class ListArtifactsMojo extends AbstractMojo {
/**
* @parameter default-value="${project}"
* @required
* @readonly
*/
MavenProject project;
public void execute() throws MojoExecutionException, MojoFailureException {
Collection<Artifact> artifacts = new ArrayList<Artifact>();
artifacts.add(project.getArtifact());
artifacts.addAll(project.getAttachedArtifacts());
for (Artifact artifact : artifacts) {
System.out.println("Artifact: " + artifact);
}
}
}