Gradle ラッパー スクリプトを使用してビルドするには、このタスクを使用します。
構文
# Gradle v3
# Build using a Gradle wrapper script.
- task: Gradle@3
inputs:
gradleWrapperFile: 'gradlew' # string. Alias: wrapperScript. Required. Gradle wrapper. Default: gradlew.
#workingDirectory: # string. Alias: cwd. Working directory.
#options: # string. Options.
tasks: 'build' # string. Required. Tasks. Default: build.
# JUnit Test Results
#publishJUnitResults: true # boolean. Publish to Azure Pipelines. Default: true.
testResultsFiles: '**/TEST-*.xml' # string. Required when publishJUnitResults = true. Test results files. Default: **/TEST-*.xml.
#testRunTitle: # string. Optional. Use when publishJUnitResults = true. Test run title.
# Code Coverage
#codeCoverageToolOption: 'None' # 'None' | 'Cobertura' | 'JaCoCo'. Alias: codeCoverageTool. Code coverage tool. Default: None.
codeCoverageClassFilesDirectories: 'build/classes/main/' # string. Alias: classFilesDirectories. Required when codeCoverageTool != None. Class files directories. Default: build/classes/main/.
#codeCoverageClassFilter: # string. Alias: classFilter. Optional. Use when codeCoverageTool != None. Class inclusion/exclusion filters.
#codeCoverageFailIfEmpty: false # boolean. Alias: failIfCoverageEmpty. Optional. Use when codeCoverageTool != None. Fail when code coverage results are missing. Default: false.
#codeCoverageGradle5xOrHigher: true # boolean. Alias: gradle5xOrHigher. Optional. Use when codeCoverageTool = JaCoCo. Gradle version >= 5.x. Default: true.
# Advanced
javaHomeOption: 'JDKVersion' # 'JDKVersion' | 'Path'. Alias: javaHomeSelection. Required. Set JAVA_HOME by. Default: JDKVersion.
#jdkVersionOption: 'default' # 'default' | '1.17' | '1.11' | '1.10' | '1.9' | '1.8' | '1.7' | '1.6'. Alias: jdkVersion. Optional. Use when javaHomeSelection = JDKVersion. JDK version. Default: default.
#jdkDirectory: # string. Alias: jdkUserInputPath. Required when javaHomeSelection = Path. JDK path.
#jdkArchitectureOption: 'x64' # 'x86' | 'x64'. Alias: jdkArchitecture. Optional. Use when jdkVersion != default. JDK architecture. Default: x64.
#gradleOptions: '-Xmx1024m' # string. Alias: gradleOpts. Set GRADLE_OPTS. Default: -Xmx1024m.
# Code Analysis
#sonarQubeRunAnalysis: false # boolean. Alias: sqAnalysisEnabled. Run SonarQube or SonarCloud Analysis. Default: false.
#sqGradlePluginVersionChoice: 'specify' # 'specify' | 'build'. Required when sqAnalysisEnabled = true. SonarQube scanner for Gradle version. Default: specify.
#sonarQubeGradlePluginVersion: '2.6.1' # string. Alias: sqGradlePluginVersion. Required when sqAnalysisEnabled = true && sqGradlePluginVersionChoice = specify. SonarQube scanner for Gradle plugin version. Default: 2.6.1.
#checkStyleRunAnalysis: false # boolean. Alias: checkstyleAnalysisEnabled. Run Checkstyle. Default: false.
#findBugsRunAnalysis: false # boolean. Alias: findbugsAnalysisEnabled. Run FindBugs. Default: false.
#pmdRunAnalysis: false # boolean. Alias: pmdAnalysisEnabled. Run PMD. Default: false.
#spotBugsAnalysis: false # boolean. Alias: spotBugsAnalysisEnabled. Run SpotBugs. Default: false.
#spotBugsGradlePluginVersionChoice: 'specify' # 'specify' | 'build'. Required when spotBugsAnalysisEnabled = true. Spotbugs plugin version. Default: specify.
#spotbugsGradlePluginVersion: '4.7.0' # string. Required when spotBugsAnalysisEnabled = true && spotBugsGradlePluginVersionChoice = specify. Version number. Default: 4.7.0.
# Gradle v3
# Build using a Gradle wrapper script.
- task: Gradle@3
inputs:
gradleWrapperFile: 'gradlew' # string. Alias: wrapperScript. Required. Gradle wrapper. Default: gradlew.
#workingDirectory: # string. Alias: cwd. Working directory.
#options: # string. Options.
tasks: 'build' # string. Required. Tasks. Default: build.
# JUnit Test Results
#publishJUnitResults: true # boolean. Publish to Azure Pipelines. Default: true.
testResultsFiles: '**/TEST-*.xml' # string. Required when publishJUnitResults = true. Test results files. Default: **/TEST-*.xml.
#testRunTitle: # string. Optional. Use when publishJUnitResults = true. Test run title.
# Code Coverage
#codeCoverageToolOption: 'None' # 'None' | 'Cobertura' | 'JaCoCo'. Alias: codeCoverageTool. Code coverage tool. Default: None.
codeCoverageClassFilesDirectories: 'build/classes/main/' # string. Alias: classFilesDirectories. Required when codeCoverageTool != None. Class files directories. Default: build/classes/main/.
#codeCoverageClassFilter: # string. Alias: classFilter. Optional. Use when codeCoverageTool != None. Class inclusion/exclusion filters.
#codeCoverageFailIfEmpty: false # boolean. Alias: failIfCoverageEmpty. Optional. Use when codeCoverageTool != None. Fail when code coverage results are missing. Default: false.
#codeCoverageGradle5xOrHigher: true # boolean. Alias: gradle5xOrHigher. Optional. Use when codeCoverageTool = JaCoCo. Gradle version >= 5.x. Default: true.
# Advanced
javaHomeOption: 'JDKVersion' # 'JDKVersion' | 'Path'. Alias: javaHomeSelection. Required. Set JAVA_HOME by. Default: JDKVersion.
#jdkVersionOption: 'default' # 'default' | '1.11' | '1.10' | '1.9' | '1.8' | '1.7' | '1.6'. Alias: jdkVersion. Optional. Use when javaHomeSelection = JDKVersion. JDK version. Default: default.
#jdkDirectory: # string. Alias: jdkUserInputPath. Required when javaHomeSelection = Path. JDK path.
#jdkArchitectureOption: 'x64' # 'x86' | 'x64'. Alias: jdkArchitecture. Optional. Use when jdkVersion != default. JDK architecture. Default: x64.
#gradleOptions: '-Xmx1024m' # string. Alias: gradleOpts. Set GRADLE_OPTS. Default: -Xmx1024m.
# Code Analysis
#sonarQubeRunAnalysis: false # boolean. Alias: sqAnalysisEnabled. Run SonarQube or SonarCloud Analysis. Default: false.
#sqGradlePluginVersionChoice: 'specify' # 'specify' | 'build'. Required when sqAnalysisEnabled = true. SonarQube scanner for Gradle version. Default: specify.
#sonarQubeGradlePluginVersion: '2.6.1' # string. Alias: sqGradlePluginVersion. Required when sqAnalysisEnabled = true && sqGradlePluginVersionChoice = specify. SonarQube scanner for Gradle plugin version. Default: 2.6.1.
#checkStyleRunAnalysis: false # boolean. Alias: checkstyleAnalysisEnabled. Run Checkstyle. Default: false.
#findBugsRunAnalysis: false # boolean. Alias: findbugsAnalysisEnabled. Run FindBugs. Default: false.
#pmdRunAnalysis: false # boolean. Alias: pmdAnalysisEnabled. Run PMD. Default: false.
#spotBugsAnalysis: false # boolean. Alias: spotBugsAnalysisEnabled. Run SpotBugs. Default: false.
#spotBugsGradlePluginVersionChoice: 'specify' # 'specify' | 'build'. Required when spotBugsAnalysisEnabled = true. Spotbugs plugin version. Default: specify.
#spotbugsGradlePluginVersion: '4.7.0' # string. Required when spotBugsAnalysisEnabled = true && spotBugsGradlePluginVersionChoice = specify. Version number. Default: 4.7.0.
入力
gradleWrapperFile
-
Gradle ラッパー
入力エイリアス: wrapperScript。
string。 必須。 既定値: gradlew。
ビルドに使用するリポジトリ内の gradlew ラッパーの場所を指定します。 Windows 上のエージェント (Microsoft がホストするエージェントを含む) は、gradlew.bat ラッパーを使用する必要があります。 Linux または macOS 上のエージェントは、gradlew シェル スクリプトを使用できます。
Gradle ラッパーの詳細を確認してください。 Gradle ラッパーがルート ディレクトリにない場合は、ラッパー スクリプトへのパスを指定します。 たとえば、subdir/gradlew のようにします。
workingDirectory
-
作業ディレクトリの
入力エイリアス: cwd。
string。
Gradle ビルドを実行する作業ディレクトリを指定します。 作業ディレクトリが指定されていない場合、タスクはリポジトリのルート ディレクトリを使用します。
tasks
-
タスク
string。 必須。 既定値: build。
Gradle が実行するタスク。 タスク名のリストはスペースで区切る必要があり、コマンド プロンプトから発行 gradlew tasks から取得できます。
詳細については、「Gradle ビルド スクリプトの基本 を参照してください。
Azure Pipelinesへの発行の publishJUnitResults -
boolean。 既定値: true。
Gradle ビルドによって生成された JUnit テスト結果を Azure Pipelines に発行します。 タスクは、Azure Pipelines でのテスト実行として、Test Results Files に一致する各テスト結果ファイルを発行します。
testResultsFiles
-
テスト結果ファイル
string。
publishJUnitResults = trueする場合に必要です。 既定値: **/TEST-*.xml。
テスト結果のファイル パス。
ワイルドカード を使用できます。 たとえば、名前が **/TEST-*.xmlで始まるすべての XML ファイルを TEST- します。
testRunTitle
-
テストの実行タイトル
string。 任意。
publishJUnitResults = trueするときに使用します。
このビルドの JUnit テスト ケースの結果の名前を指定します。
codeCoverageToolOption
-
コード カバレッジ ツールの
入力エイリアス: codeCoverageTool。
string。 使用できる値: None、Cobertura、JaCoCo。 既定値: None。
ビルドのテスト ケースでカバーされるコードを決定するコード カバレッジ ツールを指定します。
codeCoverageClassFilesDirectories
-
クラス ファイルディレクトリ
入力エイリアス: classFilesDirectories。
string。
codeCoverageTool != Noneする場合に必要です。 既定値: build/classes/main/。
クラス ファイルとアーカイブ ファイル (.jar、.war など) を含むディレクトリのコンマ区切りの一覧。 これらのディレクトリ内のクラス ファイルのコード カバレッジが報告されます。 通常、タスクは Gradle ビルドの既定のクラス ディレクトリである build/classes/java/main (Gradle 4 以降の場合) のクラスを検索します。
codeCoverageClassFilter
-
クラスの包含/除外フィルターの
入力エイリアス: classFilter。
string。 任意。
codeCoverageTool != Noneするときに使用します。
コード カバレッジの収集に含める、またはクラスを除外するフィルターのコンマ区切りの一覧。 たとえば、+:com.*、+:org.*、-:my.app*.*。
codeCoverageFailIfEmpty
-
コード カバレッジの結果が見つからない場合に失敗
入力エイリアス: failIfCoverageEmpty。
boolean。 任意。
codeCoverageTool != Noneするときに使用します。 既定値: false。
コード カバレッジで発行する結果が生成されなかった場合、ビルドが失敗します。
codeCoverageGradle5xOrHigher
-
Gradle バージョン >= 5.x
入力エイリアス: gradle5xOrHigher。
boolean。 任意。
codeCoverageTool = JaCoCoするときに使用します。 既定値: true。
gradle バージョンが >= 5.x の場合は、これを 'true' に設定します。
javaHomeOption
-
でJAVA_HOMEを設定する
入力エイリアス: javaHomeSelection。
string。 必須。 使用できる値: JDKVersion (JDK バージョン)、Path。 既定値: JDKVersion。
ビルド中にタスクが検出する JDK バージョンを選択するか、JDK パスを手動で入力して、JAVA_HOMEを設定します。
JDK バージョンの を
入力エイリアス: jdkVersion。
string。 任意。
javaHomeSelection = JDKVersionするときに使用します。 使用できる値: default、1.17 (JDK 17)、1.11 (JDK 11)、1.10 (JDK 10 (サポート対象外))、1.9 (JDK 9 (サポート対象外))、1.8 (JDK 8)、1.7 (JDK 7)、1.6 (JDK 6 (サポート対象外))。 既定値: default。
選択した JDK バージョンへのパスの検出を試み、それに応じてJAVA_HOME設定します。
JDK バージョンの を
入力エイリアス: jdkVersion。
string。 任意。
javaHomeSelection = JDKVersionするときに使用します。 使用できる値: default、1.11 (JDK 11)、1.10 (JDK 10 (サポート対象外))、1.9 (JDK 9 (サポート対象外))、1.8 (JDK 8)、1.7 (JDK 7)、1.6 (JDK 6 (サポート対象外))。 既定値: default。
選択した JDK バージョンへのパスの検出を試み、それに応じてJAVA_HOME設定します。
JDK パスを jdkDirectory - する
入力エイリアス: jdkUserInputPath。
string。
javaHomeSelection = Pathする場合に必要です。
JAVA_HOMEを指定したパスに設定します。
jdkArchitectureOption
-
JDK アーキテクチャの
入力エイリアス: jdkArchitecture。
string。 任意。
jdkVersion != defaultするときに使用します。 使用できる値: x86、x64。 既定値: x64。
JDK アーキテクチャ (x86 または x64) を提供します。
gradleOptions
-
set GRADLE_OPTS
入力エイリアス: gradleOpts。
string。 既定値: -Xmx1024m。
GRADLE_OPTS環境変数を設定します。これは、JVM を開始するためのコマンド ライン引数を送信するために使用されます。
xmx フラグは、JVM で使用可能な最大メモリを指定します。
sonarQube または SonarCloud 分析を実行する sonarQubeRunAnalysis -
入力エイリアス: sqAnalysisEnabled。
boolean。 既定値: false。
このオプションは、Gradle タスクのバージョン 1 から変更され、SonarQube と SonarCloud マーケットプレース拡張機能 使用されます。 タスク フィールドでタスクを実行した後、SonarQube または SonarCloud 分析 実行するには、このオプションを有効にします。 また、この Gradle タスクの前に、分析構成 の準備タスクをいずれかの拡張機能からビルド パイプラインに追加する必要があります。
Gradle バージョン用の sqGradlePluginVersionChoice - SonarQube スキャナー
string。
sqAnalysisEnabled = trueする場合に必要です。 使用できる値: specify (バージョン番号の指定)、build (build.gradle に適用されたプラグインを使用します)。 既定値: specify。
使用する SonarQube Gradle プラグインのバージョンを指定します。 Gradle 構成ファイルでバージョンを宣言するか、この文字列でバージョンを指定します。
Gradle プラグイン バージョン用の sonarQubeGradlePluginVersion - SonarQube スキャナー
入力エイリアス: sqGradlePluginVersion。
string。
sqAnalysisEnabled = true && sqGradlePluginVersionChoice = specifyする場合に必要です。 既定値: 2.6.1。
SonarQube Gradle プラグインのバージョン番号が含まれています。
checkstyleを実行する checkStyleRunAnalysis -
入力エイリアス: checkstyleAnalysisEnabled。
boolean。 既定値: false。
既定の Sun チェックを使用して Checkstyle ツールを実行します。 結果はビルド成果物としてアップロードされます。
FindBugsを実行する findBugsRunAnalysis -
入力エイリアス: findbugsAnalysisEnabled。
boolean。 既定値: false。
FindBugs 静的分析ツールを使用して、コード内のバグを検索します。 結果はビルド成果物としてアップロードされます。 Gradle 6.0 では、このプラグイン 削除されました。 代わりに SpotBugs プラグインを使用してください。
pmdRunAnalysis
-
PMD を実行する
入力エイリアス: pmdAnalysisEnabled。
boolean。 既定値: false。
PMD Java 静的分析ツールを使用して、コード内のバグを探します。 結果はビルド成果物としてアップロードされます。
spotBugsAnalysis
-
SpotBugs を実行する
入力エイリアス: spotBugsAnalysisEnabled。
boolean。 既定値: false。
spotBugsするときに true を実行します。 このプラグインは Gradle v5.6 以降で動作します。 SpotBugs Gradle プラグイン を使用したの詳細について説明します。 プラグインは予期しない方法で動作するか、以前の Gradle バージョンではまったく動作しない可能性があります。
spotBugsGradlePluginVersionChoice
-
Spotbugs プラグインバージョンの
string。
spotBugsAnalysisEnabled = trueする場合に必要です。 使用できる値: specify (バージョン番号の指定)、build (build.gradle に適用されたプラグインを使用します)。 既定値: specify。
使用する SpotBugs Gradle プラグインのバージョンを指定します。 バージョンは Gradle 構成ファイルで宣言することも、この文字列でバージョンを指定することもできます。
spotbugsGradlePluginVersion
-
バージョン番号の
string。
spotBugsAnalysisEnabled = true && spotBugsGradlePluginVersionChoice = specifyする場合に必要です。 既定値: 4.7.0。
SpotBugs Gradle プラグインのバージョン番号が含まれています。
タスク コントロールのオプション
すべてのタスクには、タスク入力に加えて制御オプションがあります。 詳細については、「コントロール オプションと一般的なタスク プロパティを参照してください。
出力変数
なし。
注釈
SonarQube 解析の構成は、タスク の SonarQube または Prepare Analysis Configuration 拡張機能に移動しました。
Gradle ラッパー スクリプトを使用してビルドするには、このタスクを使用します。
Gradle プロジェクトからラッパーを生成するにはどうすればよいですか?
Gradle ラッパーを使用すると、ビルド エージェントは、JVM 以外のビルド エージェント自体にソフトウェア構成を行うことなく、リポジトリにチェックインされた正確な Gradle 環境をダウンロードして構成できます。
build.gradle が存在するルート プロジェクト ディレクトリから次のコマンドを発行して、Gradle ラッパーを作成します。
jamal@fabrikam> gradle wrapperGradle ラッパーをリモート リポジトリにアップロードします。
gradle ラッパーによって生成されるバイナリ 成果物があります (
gradle/wrapper/gradle-wrapper.jarにあります)。 このバイナリ ファイルは小さく、更新する必要はありません。 ビルド エージェントで Gradle 構成の実行を変更する必要がある場合は、gradle-wrapper.propertiesを更新します。リポジトリは次のようになります。
|-- gradle/
`-- wrapper/
`-- gradle-wrapper.jar
`-- gradle-wrapper.properties
|-- src/
|-- .gitignore
|-- build.gradle
|-- gradlew
|-- gradlew.bat
依存関係をダウンロードするときのタイムアウトを修正するにはどうすればよいですか?
依存関係をダウンロードするときに Read timed out などのエラーを修正するために、Gradle 4.3 以降のユーザーは、-Dhttp.socketTimeout=60000 -Dhttp.connectionTimeout=60000に Options を追加することでタイムアウトを変更できます。 これにより、タイムアウトが 10 秒から 1 分に増加します。
例示
Gradle を使用して Java アプリをビルドする