2016-12-21 15 views
0

ArtifactoryにGradleを使用してアーティファクトを公開することができました。 バージョンは常に指定されていません(example-unspecified.jar)Artifactory jenkinsグラデルを使用した統合

どのようにgroupId = "com.example"とバージョン 'BUILD_NUMBER'をjenkinsに設定できますか?あなたがgroupversionを設定する必要が

おかげ

答えて

1

:私はその 例-10.jar( 'com.example 10' は、ジェンキンスは、ビルド番号、およびグループである)のようなものを公開したい

build.gradle

apply plugin: "java" 

group = 'com.company.blah' 
version = project.hasProperty('build_number') ? project.properties['build_number'] : '0.1' 

に続いてビルドは"$project.name-${project.version}.jar"

などの成果物を生成します

groupは、我々はどのなしでビルドする場合、それは我々がPARAM build_numberでビルドした場合、それが提供するバージョンを割り当てますblah-0.1.jar が生成されますparamsはそう"$project.group:$project.name:$project.version"

依存表記で成果物を整理するためにMavenによって使用されると、最初の項目です。例えば

gradlew clean build -Pbuild_number=10blah-10.jar

BUILD_NUMBER
+0

感謝を。バージョン番号= BUILD_NUMBERを作成するにはどうすればよいですか? – houchker

+0

更新しました。私たちはそれをゲンキンからグラデルビルドに渡す必要があります。ジェンキンズからは './gradlew clean build -Pbuild_number = $ BUILD_NUMBER'のようになります – JBirdVegas

+0

ありがとうございました。 – houchker

1

を生成することになるが、Jenkinsの環境変数を介して取り込まれます。

def buildNumber = System.getenv("BUILD_NUMBER") 

をし、コードを公開し、あなたのartifactoryでbuildNumber変数を使用する:あなたはGradleのスクリプトから、それへのアクセスを取得したい場合は、次のようにそれを行うことができます。

groupIdについては、実際に何が問題なのかわかりません。ジェンキンスのビルド中に変更されないのですか?だからあなたはあなたのgradleスクリプトの中でそれをハードコードすることができます。

別の方法としては、プロジェクトのプロパティを経由して、必要な情報を渡すことができます:

./gradlew assemble -PgroupId=com.example -PbuildNumber=$BUILD_NUMBER 
関連する問題