Gradle@1 – Gradle v1-uppgift
Skapa med hjälp av ett Gradle-omslutningsskript.
Syntax
# Gradle v1
# Build using a Gradle wrapper script.
- task: Gradle@1
inputs:
gradleWrapperFile: 'gradlew' # string. Alias: wrapperScript. Required. Gradle Wrapper. Default: gradlew.
#options: # string. Options.
tasks: 'build' # string. Required. Tasks. Default: build.
# Advanced
#workingDirectory: # string. Alias: cwd. Working Directory.
javaHomeOption: 'JDKVersion' # 'JDKVersion' | 'Path'. Alias: javaHomeSelection. Required. Set JAVA_HOME by. Default: JDKVersion.
#jdkVersionOption: 'default' # 'default' | '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.
# JUnit Test Results
#publishJUnitResults: true # boolean. Publish to TFS/Team Services. Default: true.
testResultsFiles: '**/build/test-results/TEST-*.xml' # string. Required when publishJUnitResults = true. Test Results Files. Default: **/build/test-results/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 = false. 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.
# Code Analysis
#sonarQubeRunAnalysis: false # boolean. Alias: sqAnalysisEnabled. Run SonarQube Analysis. Default: false.
#sonarQubeServiceEndpoint: # string. Alias: sqConnectedServiceName. Required when sqAnalysisEnabled = true. SonarQube Endpoint.
#sonarQubeProjectName: # string. Alias: sqProjectName. Required when sqAnalysisEnabled = true. SonarQube Project Name.
#sonarQubeProjectKey: # string. Alias: sqProjectKey. Required when sqAnalysisEnabled = true. SonarQube Project Key.
#sonarQubeProjectVersion: # string. Alias: sqProjectVersion. Required when sqAnalysisEnabled = true. SonarQube Project Version.
#sonarQubeGradlePluginVersion: '2.0.1' # string. Alias: sqGradlePluginVersion. Required when sqAnalysisEnabled = true. SonarQube Gradle Plugin Version. Default: 2.0.1.
#sonarQubeSpecifyDB: false # boolean. Alias: sqDbDetailsRequired. Optional. Use when sqAnalysisEnabled = true. The SonarQube server version is lower than 5.2. Default: false.
#sonarQubeDBUrl: # string. Alias: sqDbUrl. Optional. Use when sqDbDetailsRequired = true. Db Connection String.
#sonarQubeDBUsername: # string. Alias: sqDbUsername. Optional. Use when sqDbDetailsRequired = true. Db Username.
#sonarQubeDBPassword: # string. Alias: sqDbPassword. Optional. Use when sqDbDetailsRequired = true. Db User Password.
#sonarQubeIncludeFullReport: true # boolean. Alias: sqAnalysisIncludeFullReport. Optional. Use when sqAnalysisEnabled = true. Include full analysis report in the build summary (SQ 5.3+). Default: true.
#sonarQubeFailWhenQualityGateFails: # boolean. Alias: sqAnalysisBreakBuildIfQualityGateFailed. Optional. Use when sqAnalysisEnabled = true. Fail the build on quality gate failure (SQ 5.3+).
#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.
Indata
gradleWrapperFile
-
Gradle Wrapper
Indataalias: wrapperScript
.
string
. Krävs. Standardvärde: gradlew
.
Anger omslutningens gradlew
plats på den lagringsplats som ska användas för bygget. Agenter i Windows (inklusive Microsoft-värdbaserade agenter) måste använda omslutningen gradlew.bat
. Agenter i Linux eller macOS kan använda shell-skriptet gradlew
. Läs mer om Gradle Wrapper.
options
-
Alternativ
string
.
Anger de kommandoradsalternativ som ska skickas till Gradle-omslutningen. Mer information finns i Gradle-kommandoraden .
tasks
-
Uppgifter
string
. Krävs. Standardvärde: build
.
Uppgiften som Gradle ska köra. En lista med uppgiftsnamn ska avgränsas med blanksteg och kan hämtas från gradlew tasks
en kommandotolk.
Mer information finns i Grunderna för Gradle Build Script .
workingDirectory
-
Arbetskatalog
Indataalias: cwd
.
string
.
Anger arbetskatalogen som ska köra Gradle-versionen. Uppgiften använder lagringsplatsens rotkatalog om arbetskatalogen inte har angetts.
publishJUnitResults
-
Publicera till TFS/Team Services
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: **/build/test-results/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örningsrubrik
string
. Valfritt. Använd när publishJUnitResults = true
.
Anger ett namn för JUnit-testfallsresultaten 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 vilken kod som omfattas av testfallen för bygget.
codeCoverageClassFilesDirectories
-
Kataloger för klassfiler
Indataalias: classFilesDirectories
.
string
. Krävs när codeCoverageTool = false
. 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 klassinkludering/exkludering
Indataalias: classFilter
.
string
. Valfritt. Använd när codeCoverageTool != None
.
Kommaavgränsad lista över filter som ska inkludera eller exkludera klasser från att samla in kodtäckning. 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.
javaHomeOption
-
Ange JAVA_HOME efter
Indataalias: javaHomeSelection
.
string
. Krävs. 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 byggen 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.9
(JDK 9), 1.8
(JDK 8), 1.7
(JDK 7), 1.6
(JDK 6). 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
-
Köra SonarQube-analys
Indataalias: sqAnalysisEnabled
.
boolean
. Standardvärde: false
.
Kör en SonarQube-analys när du har kört de aktuella målen.
install
eller package
mål ska utföras först.
sonarQubeServiceEndpoint
-
SonarQube-slutpunkt
Indataalias: sqConnectedServiceName
.
string
. Krävs när sqAnalysisEnabled = true
.
Slutpunkten som anger vilken SonarQube-server som ska användas.
sonarQubeProjectName
-
SonarQube-projektnamn
Indataalias: sqProjectName
.
string
. Krävs när sqAnalysisEnabled = true
.
SonarQube-projektnamnet, som är sonar.projectName
.
sonarQubeProjectKey
-
SonarQube-projektnyckel
Indataalias: sqProjectKey
.
string
. Krävs när sqAnalysisEnabled = true
.
SonarQube-projektets unika nyckel, dvs sonar.projectKey
. .
sonarQubeProjectVersion
-
SonarQube-projektversion
Indataalias: sqProjectVersion
.
string
. Krävs när sqAnalysisEnabled = true
.
SonarQube-projektversionen, som är sonar.projectVersion
.
sonarQubeGradlePluginVersion
-
Version av plugin-programmet SonarQube Gradle
Indataalias: sqGradlePluginVersion
.
string
. Krävs när sqAnalysisEnabled = true
. Standardvärde: 2.0.1
.
Innehåller versionsnumret för plugin-programmet SpotBugs Gradle.
sonarQubeSpecifyDB
-
SonarQube-serverversionen är lägre än 5.2
Indataalias: sqDbDetailsRequired
.
boolean
. Valfritt. Använd när sqAnalysisEnabled = true
. Standardvärde: false
.
SonarQube server 5.1 och endast lägre. Anger information om databasanslutningen.
sonarQubeDBUrl
-
Db-anslutningssträng
Indataalias: sqDbUrl
.
string
. Valfritt. Använd när sqDbDetailsRequired = true
.
SonarQube server version 5.1 och endast lägre. Anger inställningen för databasanslutning, som är sonar.jdbc.url
. Exempel: jdbc:jtds:sqlserver://localhost/sonar;SelectMethod=Cursor
.
sonarQubeDBUsername
-
Databasanvändarnamn
Indataalias: sqDbUsername
.
string
. Valfritt. Använd när sqDbDetailsRequired = true
.
SonarQube server 5.1 och endast lägre. Anger användarnamnet för databasanvändaren, som är sonar.jdbc.username
.
sonarQubeDBPassword
-
Db-användarlösenord
Indataalias: sqDbPassword
.
string
. Valfritt. Använd när sqDbDetailsRequired = true
.
SonarQube server 5.1 och endast lägre. Ange lösenordet för databasanvändaren, dvs sonar.jdbc.password
. .
sonarQubeIncludeFullReport
-
Inkludera en fullständig analysrapport i byggsammanfattningen (SQ 5.3+)
Indataalias: sqAnalysisIncludeFullReport
.
boolean
. Valfritt. Använd när sqAnalysisEnabled = true
. Standardvärde: true
.
Fördröjer bygget tills SonarQube-analysen har slutförts.
sonarQubeFailWhenQualityGateFails
-
Fel vid fel i bygget av kvalitetsgrind (SQ 5.3+)
Indataalias: sqAnalysisBreakBuildIfQualityGateFailed
.
boolean
. Valfritt. Använd när sqAnalysisEnabled = true
.
SonarQube server version 5.3 eller senare. Medför fördröjningar eftersom bygget måste vänta tills SonarQube har slutfört analysen. Läs mer om hur du använder SonarQube för versioner.
checkStyleRunAnalysis
-
Kör Checkstyle
Indataalias: checkstyleAnalysisEnabled
.
boolean
. Standardvärde: false
.
Kör Verktyget Checkstyle med standardkontroller från Solen. Resultaten laddas upp som byggartefakter.
findBugsRunAnalysis
-
Köra FindBugs
Indataalias: findbugsAnalysisEnabled
.
boolean
. Standardvärde: false
.
Använder verktyget för statisk analys i FindBugs för att leta efter buggar i koden. Resultaten laddas upp som byggartefakter. I Gradle 6.0 togs det här plugin-programmet bort. Använd plugin-programmet SpotBugs i stället.
pmdRunAnalysis
-
Kör PMD
Indataalias: pmdAnalysisEnabled
.
boolean
. Standardvärde: false
.
Använder PMD Java static Analysis Tool för att leta efter buggar i koden. Resultatet laddas upp som byggartefakter.
Kontrollalternativ för aktivitet
Alla aktiviteter har kontrollalternativ utöver sina aktivitetsindata. Mer information finns i Kontrollalternativ och vanliga uppgiftsegenskaper.
Utdatavariabler
Inga.
Kommentarer
Anteckning
Det finns en nyare version av den här uppgiften tillgänglig på Gradle@3.
Anteckning
Det finns en nyare version av den här uppgiften tillgänglig på Gradle@2.
Konfigurationen av SonarQube-analysen flyttades 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 gör jag för att generera en adapter från mitt Gradle-projekt?
Med Gradle-adaptern 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 wrapper
Ladda upp Gradle-adaptern till fjärrlagringsplatsen.
Det finns en binär artefakt som genereras av gradle-adaptern (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å byggagentengradle-wrapper.properties
uppdaterar du .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 gör jag för att åtgärda tidsgränser vid nedladdning av beroenden?
För att åtgärda fel, till exempel Read timed out
vid nedladdning av beroenden, kan användare av Gradle 4.3+ ändra tidsgränsen genom att lägga till i -Dhttp.socketTimeout=60000 -Dhttp.connectionTimeout=60000
Options
. Detta ökar tidsgränsen från 10 sekunder till 1 minut.
Krav
Krav | Beskrivning |
---|---|
Pipelinetyper | YAML, klassisk version |
Körs på | Agent, DeploymentGroup |
Krav | Lokalt installerade agenter måste ha funktioner som matchar följande krav för att köra jobb som använder den här uppgiften: java |
Funktioner | Den här aktiviteten uppfyller inte några krav för efterföljande uppgifter i jobbet. |
Kommandobegränsningar | Valfri |
Inställningsbara variabler | Valfri |
Agentversion | 1.91.0 eller senare |
Uppgiftskategori | Build |