1

注: 以下に示す理由により、maven-dependency-plugin はここでは適していません

ソースが添付された Artifactory にプロジェクトをデプロイしています。コマンドを実行して、特定の成果物とその依存関係のソースをダウンロードして解凍できるようにしたいと考えています。これを使用して、アーティファクトの 2 つのバージョンを比較します。

私がやりたいことは基本的にこれです:

mvn extract:sources -DgroupId=[groupId] -DartifactId=[artifactId] -Dversion=[version]

maven-dependency-plugin のいくつかの目標を組み合わせてみましたが、これは私が必要とすることを行うことができないようです:

  • :unpack-dependenciesにはプロジェクトが必要です
  • :getでは、リモート リポジトリを明示的に指定する必要があります。私のsettings.xmlでそれらを使用できないのはなぜですか?

これを行うために独自のモジョを書いてみましたが、プロジェクトディレクトリにいない限り、リモートリポジトリを処理できないように見えるため、混乱しています。したがって、プロジェクトをダウンロードできません。そして、プロジェクトをダウンロードした後でも、mojo はすでに ${project} を初期化しているため、その依存関係などを取得できません。

助けていただければ幸いです。

4

2 に答える 2

0

Apache Ivy jar をCLI プログラムとして使用して、 Maven アーティファクトをダウンロードできます。

次の例では、Maven Central から ivy をダウンロードし、それを使用して commons-lang ソース jar をダウンロードします。

wget -O ivy.jar \
     http://search.maven.org/remotecontent?filepath=org/apache/ivy/ivy/2.2.0/ivy-2.2.0.jar

java -jar ivy.jar \
     -dependency commons-lang commons-lang 2.6 \
     -confs sources \
     -retrieve "[artifact](-[classifier]).[ext]"
于 2012-02-24T02:57:14.470 に答える