私は、Mavenのリポジトリからアーティファクトの最新バージョンを見つけるにはどうすればよいです

StackOverflow https://stackoverflow.com/questions/1199244

質問

は、自動展開の一環として、私は、私たちの内部リポジトリからアーティファクトの最新バージョンをダウンロードするためのスクリプトを必要としています。

理想的には、このスクリプトは、アリやUNIXのシェルスクリプトとなります。

ですから、例えばます:

私はmyArtifact.war持って、それはバージョン1.0、1.1および2.0を持っている - 私は(現在artifactoryを使用して)私たちのMavenリポジトリからバージョン2.0を取得するために、正しいグループIDとアーティファクトIDを指定したスクリプトを必要とする

これを行うための簡単な方法はありますか?

役に立ちましたか?

解決

あなたは利用可能なバージョンを確認するためにのmaven-にmetadata.xmlを解析することができ、そしてどのバージョンが「リリース」バージョンです。プラグインのバージョンは多くのためにはについてこの回答を参照してください。詳細ます。

あなたはネクサスを使用している場合は、 RESTのAPI リポジトリを照会するために使用します。また、簡素化するために RESTクライアントAPI を使用することができますあなたの処理ます。

は、リリースバージョンを更新するには、<のhref = "http://maven.apache.org/guides/introduction/introduction-to-the-pomでのを解放し、プロファイルをアクティブにします。 HTML」のrel = "nofollowをnoreferrer"> MavenのスーパーPOM には、をMVN展開を行うとき。あなたは、コマンドラインにある[ -Preleaseプロファイルまたは -DperformRelease =真を追加することによってこれを行うことができます。

プロファイルは、目標を実行するのmaven-リリース・プラグインの中で、デフォルトでアクティブです。それは、のuseReleaseProfile のプロパティによって制御されます。詳細については、リリース-行うの目標のマニュアルを参照してください。ます。

他のヒント

あなたは、あなたの成果物のバージョンとしてgetと一緒にMavenの依存関係のプラグインゴールLATESTを使用することができます:

mvn org.apache.maven.plugins:maven-dependency-plugin:2.8:get
    -DremoteRepositories=<URL_to_your_maven_repo>
    -Dartifact=<group_id>:<artifact_id>:LATEST
    -Dpackaging=jar
    -Ddest=<target_dir>/<artifact_name>.jar
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top