Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Använd den här uppgiften för att skapa med hjälp av ett Gradle-omslutningsskript.
Syntax
# 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.
Ingångar
gradleWrapperFile
-
Gradle omslag
Indataalias: wrapperScript.
string. Obligatoriskt. Standardvärde: gradlew.
Anger gradlew-omslutningens plats i lagringsplatsen som ska användas för bygget. Agenter i Windows (inklusive Microsoft-värdbaserade agenter) måste använda gradlew.bat-omslutningen. Agenter i Linux eller macOS kan använda gradlew shell-skriptet. Läs mer om Gradle Wrapper. Om Gradle-omslutningen inte finns i rotkatalogen anger du sökvägen till omslutningsskriptet. Till exempel subdir/gradlew.
workingDirectory
-
Arbetskatalog
Indataalias: cwd.
string.
Anger arbetskatalogen som ska köra Gradle-versionen. Uppgiften använder lagringsplatsens rotkatalog om arbetskatalogen inte har angetts.
options
-
alternativ
string.
Anger de kommandoradsalternativ som ska skickas till Gradle-omslutningen. Mer information finns i Gradle-kommandoraden.
tasks
-
Uppgifter
string. Obligatoriskt. Standardvärde: build.
Uppgift(er) som Gradle ska köra. En lista med uppgiftsnamn ska avgränsas med blanksteg och kan hämtas från gradlew tasks utfärdas från en kommandotolk.
Mer information finns i Grunderna för Gradle Build Scripts.
publishJUnitResults
-
Publicera i Azure Pipelines
boolean. Standardvärde: true.
Publicerar JUnit-testresultat som skapats av Gradle-versionen till Azure Pipelines. Uppgiften publicerar varje testresultatfil som matchar Test Results Files som en testkörning i Azure Pipelines.
testResultsFiles
-
Testresultatfiler
string. Krävs när publishJUnitResults = true. Standardvärde: **/TEST-*.xml.
Filsökvägen för testresultat.
jokertecken kan användas. Till exempel **/TEST-*.xml för alla XML-filer vars namn börjar med TEST-.
testRunTitle
-
Testkörningstitel
string. Valfritt. Använd när publishJUnitResults = true.
Innehåller ett namn för JUnit-testfallsresultatet för den här versionen.
codeCoverageToolOption
-
Kodtäckningsverktyg
Indataalias: codeCoverageTool.
string. Tillåtna värden: None, Cobertura, JaCoCo. Standardvärde: None.
Anger ett kodtäckningsverktyg för att fastställa den kod som omfattas av testfallen för bygget.
codeCoverageClassFilesDirectories
-
kataloger för klassfiler
Indataalias: classFilesDirectories.
string. Krävs när codeCoverageTool != None. Standardvärde: build/classes/main/.
Kommaavgränsad lista över kataloger som innehåller klassfiler och arkivfiler (.jar, .war med mera). Kodtäckning rapporteras för klassfiler i dessa kataloger. Normalt söker aktiviteten efter klasser under build/classes/java/main (för Gradle 4+), som är standardklasskatalogen för Gradle-versioner.
codeCoverageClassFilter
-
filter för inkludering/exkludering av klass
Indataalias: classFilter.
string. Valfritt. Använd när codeCoverageTool != None.
Kommaavgränsad lista över filter som ska inkludera eller exkludera klasser från insamling av kodtäckning. Till exempel: +:com.*,+:org.*,-:my.app*.*.
codeCoverageFailIfEmpty
-
Misslyckas när kodtäckningsresultat saknas
Indataalias: failIfCoverageEmpty.
boolean. Valfritt. Använd när codeCoverageTool != None. Standardvärde: false.
Det går inte att skapa om kodtäckningen inte gav några resultat att publicera.
codeCoverageGradle5xOrHigher
-
Gradle-version >= 5.x
Indataalias: gradle5xOrHigher.
boolean. Valfritt. Använd när codeCoverageTool = JaCoCo. Standardvärde: true.
Ange "true" om gradle-versionen är >= 5.x.
javaHomeOption
-
Ange JAVA_HOME efter
Indataalias: javaHomeSelection.
string. Obligatoriskt. Tillåtna värden: JDKVersion (JDK-version), Path. Standardvärde: JDKVersion.
Anger JAVA_HOME genom att välja en JDK-version som aktiviteten identifierar under versioner eller genom att manuellt ange en JDK-sökväg.
jdkVersionOption
-
JDK-version
Indataalias: jdkVersion.
string. Valfritt. Använd när javaHomeSelection = JDKVersion. Tillåtna värden: default, 1.17 (JDK 17), 1.11 (JDK 11), 1.10 (JDK 10 (utan support)), 1.9 (JDK 9 (utan support)), 1.8 (JDK 8), 1.7 (JDK 7), 1.6 (JDK 6 (utan support)). Standardvärde: default.
Försöker identifiera sökvägen till den valda JDK-versionen och ange JAVA_HOME därefter.
jdkVersionOption
-
JDK-version
Indataalias: jdkVersion.
string. Valfritt. Använd när javaHomeSelection = JDKVersion. Tillåtna värden: default, 1.11 (JDK 11), 1.10 (JDK 10 (utan support)), 1.9 (JDK 9 (support saknas)), 1.8 (JDK 8), 1.7 (JDK 7), 1.6 (JDK 6 (support saknas)). Standardvärde: default.
Försöker identifiera sökvägen till den valda JDK-versionen och ange JAVA_HOME därefter.
jdkDirectory
-
JDK-sökväg
Indataalias: jdkUserInputPath.
string. Krävs när javaHomeSelection = Path.
Anger JAVA_HOME till den angivna sökvägen.
jdkArchitectureOption
-
JDK-arkitektur
Indataalias: jdkArchitecture.
string. Valfritt. Använd när jdkVersion != default. Tillåtna värden: x86, x64. Standardvärde: x64.
Tillhandahåller JDK-arkitekturen (x86 eller x64).
gradleOptions
-
Ange GRADLE_OPTS
Indataalias: gradleOpts.
string. Standardvärde: -Xmx1024m.
Anger GRADLE_OPTS miljövariabeln, som används för att skicka kommandoradsargument för att starta JVM. Flaggan xmx anger det maximala minne som är tillgängligt för JVM.
sonarQubeRunAnalysis
-
Run SonarQube eller SonarCloud Analysis
Indataalias: sqAnalysisEnabled.
boolean. Standardvärde: false.
Det här alternativet har ändrats från version 1 av uppgiften Gradle för att använda SonarQube och SonarCloud Marketplace-tillägg. Aktivera det här alternativet om du vill köra SonarQube- eller SonarCloud-analys efter att ha utfört uppgifter i fältet Uppgifter. Du måste också lägga till en Förbered analyskonfiguration uppgift från ett av tilläggen till bygg-pipelinen före den här Gradle-aktiviteten.
sqGradlePluginVersionChoice
-
SonarQube-skanner för Gradle-version
string. Krävs när sqAnalysisEnabled = true. Tillåtna värden: specify (Ange versionsnummer), build (Använd plugin-program som används i build.gradle). Standardvärde: specify.
Anger den SonarQube Gradle-pluginversion som ska användas. Deklarera versionen i Gradle-konfigurationsfilen eller ange en version med den här strängen.
sonarQubeGradlePluginVersion
-
SonarQube-skanner för Gradle-plugin-version
Indataalias: sqGradlePluginVersion.
string. Krävs när sqAnalysisEnabled = true && sqGradlePluginVersionChoice = specify. Standardvärde: 2.6.1.
Innehåller versionsnumret för SonarQube Gradle-plugin-programmet.
checkStyleRunAnalysis
-
Kör Checkstyle-
Indataalias: checkstyleAnalysisEnabled.
boolean. Standardvärde: false.
Kör verktyget Checkstyle med standardkontrollerna Sun. Resultaten laddas upp som byggartefakter.
findBugsRunAnalysis
-
Kör FindBugs-
Indataalias: findbugsAnalysisEnabled.
boolean. Standardvärde: false.
Använder verktyget för statisk analys av FindBugs för att leta efter buggar i koden. Resultaten laddas upp som byggartefakter. I Gradle 6.0 har det här plugin-programmet tagits bort. Använd plugin-programmet SpotBugs i stället.
pmdRunAnalysis
-
Kör PMD-
Indataalias: pmdAnalysisEnabled.
boolean. Standardvärde: false.
Använder pmd-verktyget för java-statisk analys för att leta efter buggar i koden. Resultatet laddas upp som byggartefakter.
spotBugsAnalysis
-
Kör SpotBugs
Indataalias: spotBugsAnalysisEnabled.
boolean. Standardvärde: false.
Kör spotBugs när true. Det här plugin-programmet fungerar med Gradle v5.6 eller senare. Läs mer om med plugin-programmet SpotBugs Gradle. Plugin-programmet kan fungera på ett oväntat sätt eller kanske inte fungerar alls med en tidigare Gradle-version.
spotBugsGradlePluginVersionChoice
-
Spotbugs-pluginversion
string. Krävs när spotBugsAnalysisEnabled = true. Tillåtna värden: specify (Ange versionsnummer), build (Använd plugin-program som används i build.gradle). Standardvärde: specify.
Anger den SpotBugs Gradle-pluginversion som ska användas. Versionen kan deklareras i Gradle-konfigurationsfilen, eller så kan versionen anges i den här strängen.
spotbugsGradlePluginVersion
-
Versionsnummer
string. Krävs när spotBugsAnalysisEnabled = true && spotBugsGradlePluginVersionChoice = specify. Standardvärde: 4.7.0.
Innehåller versionsnumret för plugin-programmet SpotBugs Gradle.
Alternativ för uppgiftskontroll
Alla aktiviteter har kontrollalternativ utöver sina aktivitetsindata. Mer information finns i Kontrollalternativ och vanliga uppgiftsegenskaper.
Utdatavariabler
Ingen.
Anmärkningar
Konfigurationen av SonarQube-analysen har flyttats till SonarQube- eller SonarCloud-tilläggen i uppgiften Prepare Analysis Configuration.
Använd den här uppgiften för att skapa med hjälp av ett Gradle-omslutningsskript.
Hur genererar jag en omslutning från mitt Gradle-projekt?
Med Gradle-omslutningen kan byggagenten ladda ned och konfigurera den exakta Gradle-miljön som är incheckad på lagringsplatsen utan att ha någon annan programvarukonfiguration på själva byggagenten än JVM.
Skapa Gradle-omslutningen genom att utfärda följande kommando från rotprojektkatalogen där din build.gradle finns:
jamal@fabrikam> gradle wrapperLadda upp Gradle-omslutningen till fjärrlagringsplatsen.
Det finns en binär artefakt som genereras av gradle-omslutningen (finns på
gradle/wrapper/gradle-wrapper.jar). Den här binära filen är liten och kräver inte uppdatering. Om du behöver ändra Gradle-konfigurationskörningen på byggagenten uppdaterar dugradle-wrapper.properties.Lagringsplatsen bör se ut ungefär så här:
|-- gradle/
`-- wrapper/
`-- gradle-wrapper.jar
`-- gradle-wrapper.properties
|-- src/
|-- .gitignore
|-- build.gradle
|-- gradlew
|-- gradlew.bat
Hur åtgärdar jag tidsgränser när jag laddar ned beroenden?
Om du vill åtgärda fel som Read timed out vid nedladdning av beroenden kan användare av Gradle 4.3+ ändra tidsgränsen genom att lägga till -Dhttp.socketTimeout=60000 -Dhttp.connectionTimeout=60000 i Options. Detta ökar tidsgränsen från 10 sekunder till 1 minut.
Exempel
Kravspecifikation
| Krav | Beskrivning |
|---|---|
| Pipelinetyper | YAML, klassisk version |
| Körs på | Agent, DeploymentGroup |
| Krav | Ingen |
| Kapaciteter | Den här aktiviteten uppfyller inte några krav på efterföljande uppgifter i jobbet. |
| Kommandobegränsningar | Vilken som helst |
| variabler som kan | Vilken som helst |
| Agentversion | 1.91.0 eller senare |
| Aktivitetskategori | Skapa |