Condividi tramite


Gradle@1 - Attività Gradle v1

Compilare usando uno script wrapper Gradle.

Sintassi

# 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.

Input

gradleWrapperFile - Gradle Wrapper
Alias di input: wrapperScript. string. Obbligatorio. Valore predefinito: gradlew.

Specifica il gradlew percorso del wrapper all'interno del repository che verrà usato per la compilazione. Gli agenti in Windows (inclusi gli agenti ospitati da Microsoft) devono usare il gradlew.bat wrapper. Gli agenti in Linux o macOS possono usare lo script della gradlew shell. Altre informazioni su Gradle Wrapper.


options - Opzioni
string.

Specifica le opzioni della riga di comando che verranno passate al wrapper Gradle. Per altre informazioni, vedere 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 estratto da gradlew tasks un prompt dei comandi.

Per altre informazioni, vedere Gradle Build Script Basics (Nozioni di base sullo script di compilazione Gradle ).


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.


publishJUnitResults - Pubblicare in TFS/Team Services
boolean. Valore predefinito: true.

Pubblica i risultati del test JUnit prodotti 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: **/build/test-results/TEST-*.xml.

Percorso del file per i risultati del test. I caratteri jolly possono essere usati. Ad esempio, **/TEST-*.xml per tutti i file XML il cui nome inizia con TEST-.


testRunTitle - Titolo esecuzione test
string. facoltativo. 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 = false. Valore predefinito: build/classes/main/.

Elenco delimitato da virgole di directory contenenti file di classe e file di archivio (con estensione 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 classe predefinita per le compilazioni Gradle.


codeCoverageClassFilter - Filtri di inclusione/esclusione di classi
Alias di input: classFilter. string. facoltativo. 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 - Esito negativo quando mancano i risultati del code coverage
Alias di input: failIfCoverageEmpty. boolean. facoltativo. Usare quando codeCoverageTool != None. Valore predefinito: false.

Non riesce la compilazione se code coverage non ha prodotto risultati da pubblicare.


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. facoltativo. Usare quando javaHomeSelection = JDKVersion. Valori consentiti: default, 1.9 (JDK 9), 1.8 (JDK 8), 1.7 (JDK 7), 1.6 (JDK 6). Valore predefinito: default.

Tenta di individuare il percorso della versione JDK selezionata e di 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 di JDK
Alias di input: jdkArchitecture. string. facoltativo. Usare quando jdkVersion != default. Valori consentiti: x86, x64. Valore predefinito: x64.

Fornisce l'architettura JDK (x86 o x64).


gradleOptions - Impostare GRADLE_OPTS
Alias di input: gradleOpts. string. Valore predefinito: -Xmx1024m.

Imposta la variabile di ambiente GRADLE_OPTS, usata per inviare argomenti della riga di comando per avviare JVM. Il xmx flag specifica la memoria massima disponibile per la JVM.


sonarQubeRunAnalysis - Eseguire l'analisi sonarQube
Alias di input: sqAnalysisEnabled. boolean. Valore predefinito: false.

Esegue un'analisi SonarQube dopo aver eseguito gli obiettivi correnti. install o package gli obiettivi devono essere eseguiti per primi.


sonarQubeServiceEndpoint - SonarQube Endpoint
Alias di input: sqConnectedServiceName. string. Obbligatorio quando sqAnalysisEnabled = true.

Endpoint che specifica il server SonarQube da usare.


sonarQubeProjectName - Nome progetto SonarQube
Alias di input: sqProjectName. string. Obbligatorio quando sqAnalysisEnabled = true.

Nome del progetto SonarQube, ovvero sonar.projectName.


sonarQubeProjectKey - Chiave del progetto SonarQube
Alias di input: sqProjectKey. string. Obbligatorio quando sqAnalysisEnabled = true.

Chiave univoca del progetto SonarQube, ovvero sonar.projectKey.


sonarQubeProjectVersion - Versione del progetto SonarQube
Alias di input: sqProjectVersion. string. Obbligatorio quando sqAnalysisEnabled = true.

Versione del progetto SonarQube, ovvero sonar.projectVersion.


sonarQubeGradlePluginVersion - Versione del plug-in SonarQube Gradle
Alias di input: sqGradlePluginVersion. string. Obbligatorio quando sqAnalysisEnabled = true. Valore predefinito: 2.0.1.

Contiene il numero di versione del plug-in SpotBugs Gradle.


sonarQubeSpecifyDB - La versione del server SonarQube è inferiore a 5.2
Alias di input: sqDbDetailsRequired. boolean. facoltativo. Usare quando sqAnalysisEnabled = true. Valore predefinito: false.

Solo sonarQube server 5.1 e inferiore. Specifica i dettagli della connessione al database.


sonarQubeDBUrl - Stringa di connessione db
Alias di input: sqDbUrl. string. facoltativo. Usare quando sqDbDetailsRequired = true.

Solo sonarQube server versione 5.1 e inferiore. Immette l'impostazione di connessione del database, ovvero sonar.jdbc.url. Ad esempio: jdbc:jtds:sqlserver://localhost/sonar;SelectMethod=Cursor.


sonarQubeDBUsername - Nome utente del database
Alias di input: sqDbUsername. string. facoltativo. Usare quando sqDbDetailsRequired = true.

Solo sonarQube server 5.1 e inferiore. Immette il nome utente per l'utente del database, ovvero sonar.jdbc.username.


sonarQubeDBPassword - Password utente db
Alias di input: sqDbPassword. string. facoltativo. Usare quando sqDbDetailsRequired = true.

Solo sonarQube server 5.1 e inferiore. Immettere la password per l'utente del database, ovvero sonar.jdbc.password.


sonarQubeIncludeFullReport - Includere il report di analisi completo nel riepilogo della compilazione (SQ 5.3+)
Alias di input: sqAnalysisIncludeFullReport. boolean. facoltativo. Usare quando sqAnalysisEnabled = true. Valore predefinito: true.

Ritarda la compilazione fino al completamento dell'analisi sonarQube.


sonarQubeFailWhenQualityGateFails - Esito negativo dell'errore di compilazione sul gate di qualità (SQ 5.3+)
Alias di input: sqAnalysisBreakBuildIfQualityGateFailed. boolean. facoltativo. Usare quando sqAnalysisEnabled = true.

Solo sonarQube server versione 5.3 o successiva. Introduce ritardi perché la compilazione deve attendere il completamento dell'analisi di SonarQube. Altre informazioni sull'uso di SonarQube per le compilazioni.


checkStyleRunAnalysis - Eseguire 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.


Opzioni di controllo delle attività

Tutte le attività dispongono di opzioni di controllo oltre ai relativi input attività. Per altre informazioni, vedere Opzioni di controllo e proprietà comuni delle attività.

Variabili di output

Nessuno.

Osservazioni

Nota

In Gradle@3 è disponibile una versione più recente di questa attività.

Nota

In Gradle@2 è disponibile una versione più recente di questa attività.

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.

Ricerca per categorie generare 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 dalla JVM.

  1. Creare il wrapper Gradle eseguendo il comando seguente dalla directory del progetto radice in cui risiede build.gradle:

    jamal@fabrikam> gradle wrapper

  2. Caricare il wrapper Gradle nel repository remoto.

    È presente un artefatto binario generato dal wrapper gradle (situato in gradle/wrapper/gradle-wrapper.jar). Questo file binario è piccolo e non richiede l'aggiornamento. Se è necessario modificare l'esecuzione della configurazione Gradle nell'agente di compilazione, aggiornare .gradle-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

Ricerca per categorie correzione dei timeout durante il download delle dipendenze?

Per correggere gli errori, ad Read timed out esempio 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.

Requisiti

Requisito Descrizione
Tipi di pipeline YAML, build classica
Esecuzione in Agente, DeploymentGroup
Richieste Gli agenti self-hosted devono avere funzionalità che corrispondono alle richieste seguenti per eseguire processi che usano questa attività: java
Capabilities Questa attività non soddisfa le richieste per le attività successive nel processo.
Restrizioni dei comandi Qualsiasi
Variabili impostabili Qualsiasi
Versione agente 1.91.0 o versione successiva
Categoria attività Compilazione