私はgGradleによって「Mavenのパブリッシュ」プラグインを使用していますし、それは私が避けたい実際のバージョン、後に接尾辞を置きます。なぜなら私のCIの次のステップでは、.jarファイルをダウンロードしようとすると、curlコマンドは何もダウンロードされません。
私は経由で私のネクサス、アップロードに接続できます./gradlew publish Optional<VERSION=0.0.1>
が、プラグインは、(私が思う)このように見ている、タイムスタンプを追加されます。
a/b/c/ARTIFACT-NAME/0.0.1-SNAPSHOT/ARTIFACT-NAME-0.0.1-20190114.134142-8.jar
どのように私は、プラグインのタイムスタンプの機能を無効にすることができますか?
それは私の出版作業です:
publishing {
publications {
mavenJava(MavenPublication) {
from components.java
}
}
repositories {
maven {
if (project.version.endsWith('-SNAPSHOT')) {
url deployNexusSnapshotUrl
} else {
url deployNexusReleaseUrl
}
credentials {
username = deployNexusUsername
password = deployNexusPassword
}
}
}
}
あなたが公開しているからだSNAPSHOT
バージョンを。このタイムスタンプは、別のスナップショットは、時間の限られた期間のためにそれらを使用し、後でそれをパージする例を構築区別できるようにする機能です。あなたが使用していない、適切な成果物のバージョンリリースするときには発生しません-SNAPSHOT
接尾辞を。
CIビルド再現性のために、あなたは使用しないでくださいSNAPSHOT
あなたはCI上でソフトウェアを構築しているときの依存関係を。SNAPSHOT
バージョンにタイムスタンプを無効にした場合のバージョンでは、特に上書きすることができます。
プロジェクトには、コードの変更がなかった場合、どのようなCIビルドが緑色であったが、次の日に誰かが上書きされSNAPSHOT
、リポジトリに依存し、ビルドは今赤のですか?次の日には何をあなたは緊急の生産問題を解決する修正プログラムをリリースする必要がなく、代わりに新しいにより導入された問題に焦点を当てている場合SNAPSHOT
、依存関係。
あなたは間違った問題を解決しようとしています。SNAPSHOT
唯一の地域開発を目的としています。