Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Usare questa attività per compilare usando uno script wrapper Gradle.
Sintassi
# 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.
Ingressi dati
gradleWrapperFile
-
Involucro Gradle
Alias di input: wrapperScript
.
string
. Obbligatorio. Valore predefinito: gradlew
Specifica il percorso del wrapper gradlew
all'interno del repository che verrà usato per la compilazione. Gli agenti in Windows (inclusi gli agenti ospitati da Microsoft) devono usare il wrapper gradlew.bat
. Gli agenti in Linux o macOS possono usare lo script della shell gradlew
. Altre informazioni sul wrapper Gradle . Se il wrapper Gradle non si trova nella directory principale, specificare il percorso dello script wrapper. Ad esempio: subdir/gradlew
.
workingDirectory
-
directory di lavoro
Alias di input: cwd
.
string
.
Specifica la directory di lavoro per eseguire la compilazione Gradle. L'attività usa la directory radice del repository se la directory di lavoro non è specificata.
options
-
Opzioni
string
.
Specifica le opzioni della riga di comando che verranno passate al wrapper Gradle. Per altre informazioni, vedere della riga di comando gradle.
tasks
-
attività
string
. Obbligatorio. Valore predefinito: build
Attività da eseguire per Gradle. Un elenco di nomi di attività deve essere separato da spazi e può essere tratto da gradlew tasks
rilasciato da un prompt dei comandi.
Per altre informazioni, vedere Di base dello script di compilazione Gradle.
publishJUnitResults
-
Pubblica in Azure Pipelines
boolean
. Valore predefinito: true
Pubblica i risultati dei test JUnit generati dalla compilazione Gradle in Azure Pipelines. L'attività pubblica ogni file dei risultati del test corrispondente Test Results Files
come esecuzione di test in Azure Pipelines.
testResultsFiles
-
file dei risultati dei test
string
. Obbligatorio quando publishJUnitResults = true
. Valore predefinito: **/TEST-*.xml
Percorso del file per i risultati del test.
è possibile usare caratteri jolly. Ad esempio, **/TEST-*.xml
per tutti i file XML il cui nome inizia con TEST-
.
testRunTitle
-
Titolo esecuzione test
string
. Opzionale. Usare quando publishJUnitResults = true
.
Fornisce un nome per i risultati del test case JUnit per questa compilazione.
codeCoverageToolOption
-
strumento code coverage
Alias di input: codeCoverageTool
.
string
. Valori consentiti: None
, Cobertura
, JaCoCo
. Valore predefinito: None
Specifica uno strumento di code coverage per determinare il codice coperto dai test case per la compilazione.
codeCoverageClassFilesDirectories
-
directory dei file di classe
Alias di input: classFilesDirectories
.
string
. Obbligatorio quando codeCoverageTool != None
. Valore predefinito: build/classes/main/
Elenco delimitato da virgole di directory contenenti file di classe e file di archivio (.jar, war e altro ancora). Il code coverage viene segnalato per i file di classe in queste directory. In genere, l'attività cerca le classi in build/classes/java/main
(per Gradle 4+), ovvero la directory di classi predefinita per le compilazioni Gradle.
codeCoverageClassFilter
-
filtri di inclusione/esclusione di classi
Alias di input: classFilter
.
string
. Opzionale. Usare quando codeCoverageTool != None
.
Elenco delimitato da virgole di filtri da includere o escludere classi dalla raccolta del code coverage. Ad esempio: +:com.*
,+:org.*
,-:my.app*.*
.
codeCoverageFailIfEmpty
-
Errore in caso di risultati di code coverage mancanti
Alias di input: failIfCoverageEmpty
.
boolean
. Opzionale. Usare quando codeCoverageTool != None
. Valore predefinito: false
Non riesce la compilazione se il code coverage non ha prodotto alcun risultato da pubblicare.
codeCoverageGradle5xOrHigher
-
Versione >Gradle = 5.x
Alias di input: gradle5xOrHigher
.
boolean
. Opzionale. Usare quando codeCoverageTool = JaCoCo
. Valore predefinito: true
Impostalo su 'true' se gradle version è >= 5.x.
javaHomeOption
-
Impostare JAVA_HOME per
Alias di input: javaHomeSelection
.
string
. Obbligatorio. Valori consentiti: JDKVersion
(versione JDK), Path
. Valore predefinito: JDKVersion
Imposta JAVA_HOME selezionando una versione JDK individuata dall'attività durante le compilazioni o immettendo manualmente un percorso JDK.
jdkVersionOption
-
versione di JDK
Alias di input: jdkVersion
.
string
. Opzionale. Usare quando javaHomeSelection = JDKVersion
. Valori consentiti: default
, 1.17
(JDK 17), 1.11
(JDK 11), 1.10
(JDK 10 (senza supporto), 1.9
(JDK 9 (non supportato)), 1.8
(JDK 8), 1.7
(JDK 7), 1.6
(JDK 6 (supporto non supportato)). Valore predefinito: default
Tenta di individuare il percorso della versione JDK selezionata e impostare JAVA_HOME di conseguenza.
jdkVersionOption
-
versione di JDK
Alias di input: jdkVersion
.
string
. Opzionale. Usare quando javaHomeSelection = JDKVersion
. Valori consentiti: default
, 1.11
(JDK 11), 1.10
(JDK 10 (non supportato)), 1.9
(JDK 9 (non supportato)), 1.8
(JDK 8), 1.7
(JDK 7), 1.6
(JDK 6 (non supportato)). Valore predefinito: default
Tenta di individuare il percorso della versione JDK selezionata e impostare JAVA_HOME di conseguenza.
jdkDirectory
-
percorso JDK
Alias di input: jdkUserInputPath
.
string
. Obbligatorio quando javaHomeSelection = Path
.
Imposta JAVA_HOME sul percorso specificato.
jdkArchitectureOption
-
architettura JDK
Alias di input: jdkArchitecture
.
string
. Opzionale. Usare quando jdkVersion != default
. Valori consentiti: x86
, x64
. Valore predefinito: x64
Fornisce l'architettura JDK (x86 o x64).
gradleOptions
-
Imposta GRADLE_OPTS
Alias di input: gradleOpts
.
string
. Valore predefinito: -Xmx1024m
Imposta la variabile di ambiente GRADLE_OPTS utilizzata per inviare argomenti della riga di comando per avviare la JVM. Il flag xmx
specifica la memoria massima disponibile per la JVM.
sonarQubeRunAnalysis
-
Esegui l'analisi SonarQube o SonarCloud
Alias di input: sqAnalysisEnabled
.
boolean
. Valore predefinito: false
Questa opzione è stata modificata rispetto alla versione 1 dell'attività Gradle per l'utilizzo delle estensioni del marketplace SonarQube e SonarCloud . Abilitare questa opzione per eseguire l'analisi SonarQube o SonarCloud dopo aver eseguito le attività nel campo Attività . È inoltre necessario aggiungere un'attività Prepara configurazione analisi da una delle estensioni alla pipeline di compilazione prima di questa attività Gradle.
sqGradlePluginVersionChoice
-
Scanner SonarQube per la versione Gradle
string
. Obbligatorio quando sqAnalysisEnabled = true
. Valori consentiti: specify
(Specificare il numero di versione), build
(Utilizzare il plug-in applicato nel build.gradle). Valore predefinito: specify
Specifica la versione del plug-in SonarQube Gradle da utilizzare. Dichiarare la versione nel file di configurazione Gradle o specificare una versione con questa stringa.
sonarQubeGradlePluginVersion
-
Scanner SonarQube per la versione del plug-in Gradle
Alias di input: sqGradlePluginVersion
.
string
. Obbligatorio quando sqAnalysisEnabled = true && sqGradlePluginVersionChoice = specify
. Valore predefinito: 2.6.1
Contiene il numero di versione del plug-in SonarQube Gradle.
checkStyleRunAnalysis
-
Esegui checkstyle
Alias di input: checkstyleAnalysisEnabled
.
boolean
. Valore predefinito: false
Esegue lo strumento Checkstyle con i controlli Sun predefiniti. I risultati vengono caricati come artefatti di compilazione.
findBugsRunAnalysis
-
Eseguire FindBugs
Alias di input: findbugsAnalysisEnabled
.
boolean
. Valore predefinito: false
Usa lo strumento di analisi statica FindBugs per cercare bug nel codice. I risultati vengono caricati come artefatti di compilazione. In Gradle 6.0 questo plug-in è stato rimosso. Usare invece il plug-in SpotBugs.
pmdRunAnalysis
-
eseguire PMD
Alias di input: pmdAnalysisEnabled
.
boolean
. Valore predefinito: false
Usa lo strumento di analisi statica Java PMD per cercare bug nel codice. I risultati vengono caricati come artefatti di compilazione.
spotBugsAnalysis
-
Esegui SpotBugs
Alias di input: spotBugsAnalysisEnabled
.
boolean
. Valore predefinito: false
Viene eseguito spotBugs
quando true
. Questo plugin funziona con Gradle v5.6 o versioni successive. Scopri di più sull'utilizzo del plug-in SpotBugs Gradle. Il plug-in potrebbe funzionare in modo inaspettato o potrebbe non funzionare affatto con una versione precedente di Gradle.
spotBugsGradlePluginVersionChoice
-
Versione del plugin Spotbugs
string
. Obbligatorio quando spotBugsAnalysisEnabled = true
. Valori consentiti: specify
(Specificare il numero di versione), build
(Utilizzare il plug-in applicato nel build.gradle). Valore predefinito: specify
Specifica la versione del plug-in SpotBugs Gradle da utilizzare. La versione può essere dichiarata nel file di configurazione Gradle oppure la versione può essere specificata in questa stringa.
spotbugsGradlePluginVersion
-
Numero di versione
string
. Obbligatorio quando spotBugsAnalysisEnabled = true && spotBugsGradlePluginVersionChoice = specify
. Valore predefinito: 4.7.0
Contiene il numero di versione del plug-in SpotBugs Gradle .
Opzioni di controllo delle attività
Tutte le attività hanno opzioni di controllo oltre ai relativi input di attività. Per altre informazioni, vedere Opzioni di controllo e proprietà comuni delle attività.
Variabili di uscita
Nessuno.
Osservazioni:
La configurazione dell'analisi SonarQube è stata spostata nelle estensioni SonarQube o SonarCloud nell'attività Prepare Analysis Configuration
.
Usare questa attività per compilare usando uno script wrapper Gradle.
Come si genera un wrapper dal progetto Gradle?
Il wrapper Gradle consente all'agente di compilazione di scaricare e configurare l'ambiente Gradle esatto archiviato nel repository senza avere alcuna configurazione software nell'agente di compilazione stesso diverso da JVM.
Creare il wrapper Gradle eseguendo il comando seguente dalla directory del progetto radice in cui risiede build.gradle:
jamal@fabrikam> gradle wrapper
Caricare il wrapper Gradle nel repository remoto.
È presente un artefatto binario generato dal wrapper gradle (che si trova in
gradle/wrapper/gradle-wrapper.jar
). Questo file binario è di piccole dimensioni e non richiede l'aggiornamento. Se è necessario modificare la configurazione gradle eseguita nell'agente di compilazione, aggiornare ilgradle-wrapper.properties
.Il repository dovrebbe avere un aspetto simile al seguente:
|-- gradle/
`-- wrapper/
`-- gradle-wrapper.jar
`-- gradle-wrapper.properties
|-- src/
|-- .gitignore
|-- build.gradle
|-- gradlew
|-- gradlew.bat
Come è possibile correggere i timeout durante il download delle dipendenze?
Per correggere errori come Read timed out
durante il download delle dipendenze, gli utenti di Gradle 4.3+ possono modificare il timeout aggiungendo -Dhttp.socketTimeout=60000 -Dhttp.connectionTimeout=60000
a Options
. Questo aumenta il timeout da 10 secondi a 1 minuto.
Esempi
Crea la tua app Java con Gradle
Requisiti
Requisito | Descrizione |
---|---|
Tipi di pipeline | YAML, build classica |
Viene eseguito in | Agente, DeploymentGroup |
Richieste | Nessuno |
Funzionalità | Questa attività non soddisfa alcuna richiesta di attività successive nel processo. |
restrizioni dei comandi | Qualunque |
variabili impostabili | Qualunque |
Versione agente | 1.91.0 o versione successiva |
Categoria attività | Costruire |