tarefa Gradle@3 - Gradle v3
Use esta tarefa para compilar usando um script de wrapper Gradle.
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.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.
Entradas
gradleWrapperFile
- Wrapper Gradle
Alias de entrada: wrapperScript
. string
. Obrigatórios. Valor padrão: gradlew
.
Especifica a gradlew
localização do wrapper no repositório que será usado para o build. Os agentes no Windows (incluindo agentes hospedados pela Microsoft) devem usar o gradlew.bat
wrapper. Os agentes no Linux ou no macOS podem usar o script de gradlew
shell. Saiba mais sobre o Wrapper Gradle.
workingDirectory
- Diretório de trabalho
Alias de entrada: cwd
. string
.
Especifica o diretório de trabalho para executar o build do Gradle. A tarefa usará o diretório raiz do repositório se o diretório de trabalho não for especificado.
options
- Opções
string
.
Especifica as opções de linha de comando que serão passadas para o wrapper Gradle. Confira Linha de Comando do Gradle para obter mais informações.
tasks
- Tarefas
string
. Obrigatórios. Valor padrão: build
.
As tarefas para Gradle executar. Uma lista de nomes de tarefas deve ser separada por espaços e pode ser retirada de um prompt de gradlew tasks
comando.
Consulte Gradle Build Script Basics para obter mais informações.
publishJUnitResults
- Publicar no Azure Pipelines
boolean
. Valor padrão: true
.
Publica os resultados do teste JUnit produzidos pelo build do Gradle no Azure Pipelines. A tarefa publica cada arquivo de resultados de teste correspondente Test Results Files
como uma execução de teste no Azure Pipelines.
testResultsFiles
- Arquivos de resultados de teste
string
. Obrigatório quando publishJUnitResults = true
. Valor padrão: **/TEST-*.xml
.
O caminho do arquivo para os resultados do teste. Curingas podem ser usados . Por exemplo, **/TEST-*.xml
para todos os arquivos XML cujo nome começa com TEST-
.
testRunTitle
- Título da execução de teste
string
. Opcional. Use quando publishJUnitResults = true
.
Fornece um nome para os resultados do caso de teste JUnit para este build.
codeCoverageToolOption
- Ferramenta de cobertura de código
Alias de entrada: codeCoverageTool
. string
. Valores permitidos: None
, Cobertura
, JaCoCo
. Valor padrão: None
.
Especifica uma ferramenta de cobertura de código para determinar o código coberto pelos casos de teste para o build.
codeCoverageClassFilesDirectories
- Diretórios de arquivos de classe
Alias de entrada: classFilesDirectories
. string
. Obrigatório quando codeCoverageTool != None
. Valor padrão: build/classes/main/
.
A lista separada por vírgulas de diretórios que contêm arquivos de classe e arquivos de arquivo morto (.jar, .war e muito mais). A cobertura de código é relatada para arquivos de classe nesses diretórios. Normalmente, a tarefa pesquisa classes em build/classes/java/main
(para Gradle 4+), que é o diretório de classe padrão para builds Gradle.
codeCoverageClassFilter
- Filtros de inclusão/exclusão de classe
Alias de entrada: classFilter
. string
. Opcional. Use quando codeCoverageTool != None
.
A lista separada por vírgulas de filtros para incluir ou excluir classes da coleta de cobertura de código. Por exemplo: +:com.*
,+:org.*
,-:my.app*.*
.
codeCoverageFailIfEmpty
- Falha quando os resultados da cobertura de código estão ausentes
Alias de entrada: failIfCoverageEmpty
. boolean
. Opcional. Use quando codeCoverageTool != None
. Valor padrão: false
.
Falha no build se a cobertura de código não produzir resultados a serem publicados.
codeCoverageGradle5xOrHigher
- Versão do Gradle >= 5.x
Alias de entrada: gradle5xOrHigher
. boolean
. Opcional. Use quando codeCoverageTool = JaCoCo
. Valor padrão: true
.
Defina isso como 'true' se a versão do gradle for >= 5.x.
javaHomeOption
- Definir JAVA_HOME por
Alias de entrada: javaHomeSelection
. string
. Obrigatórios. Valores permitidos: JDKVersion
(Versão do JDK), Path
. Valor padrão: JDKVersion
.
Define JAVA_HOME selecionando uma versão do JDK que a tarefa descobre durante builds ou inserindo manualmente um caminho JDK.
jdkVersionOption
- Versão do JDK
Alias de entrada: jdkVersion
. string
. Opcional. Use quando javaHomeSelection = JDKVersion
. Valores permitidos: default
, 1.11
(JDK 11), 1.10
(JDK 10 (sem suporte)), 1.9
(JDK 9 (sem suporte)), 1.8
(JDK 8), 1.7
(JDK 7) 1.6
(JDK 6 (sem suporte)). Valor padrão: default
.
Tenta descobrir o caminho para a versão do JDK selecionada e definir JAVA_HOME adequadamente.
jdkDirectory
- Caminho do JDK
Alias de entrada: jdkUserInputPath
. string
. Obrigatório quando javaHomeSelection = Path
.
Define JAVA_HOME para o caminho fornecido.
jdkArchitectureOption
- Arquitetura do JDK
Alias de entrada: jdkArchitecture
. string
. Opcional. Use quando jdkVersion != default
. Valores Permitidos: x86
e x64
. Valor padrão: x64
.
Fornece a arquitetura do JDK (x86 ou x64).
gradleOptions
- Definir GRADLE_OPTS
Alias de entrada: gradleOpts
. string
. Valor padrão: -Xmx1024m
.
Define a variável de ambiente GRADLE_OPTS, que é usada para enviar argumentos de linha de comando para iniciar a JVM. O xmx
sinalizador especifica a memória máxima disponível para a JVM.
sonarQubeRunAnalysis
- Executar a análise do SonarQube ou do SonarCloud
Alias de entrada: sqAnalysisEnabled
. boolean
. Valor padrão: false
.
Essa opção foi alterada da versão 1 da tarefa Gradle para usar as extensões do marketplace SonarQube e SonarCloud . Habilite essa opção para executar a análise do SonarQube ou do SonarCloud depois de executar tarefas no campo Tarefas . Você também deve adicionar uma tarefa Preparar Configuração de Análise de uma das extensões ao pipeline de build antes dessa tarefa do Gradle.
sqGradlePluginVersionChoice
- Scanner SonarQube para a versão do Gradle
string
. Obrigatório quando sqAnalysisEnabled = true
. Valores permitidos: specify
(especifique o número da versão) build
(Use o plug-in aplicado em seu build.gradle). Valor padrão: specify
.
Especifica a versão do plug-in SonarQube Gradle a ser usada. Declare a versão no arquivo de configuração do Gradle ou especifique uma versão com essa cadeia de caracteres.
sonarQubeGradlePluginVersion
- Scanner SonarQube para a versão do plug-in do Gradle
Alias de entrada: sqGradlePluginVersion
. string
. Obrigatório quando sqAnalysisEnabled = true && sqGradlePluginVersionChoice = specify
. Valor padrão: 2.6.1
.
Contém o número de versão do plug-in SonarQube Gradle.
checkStyleRunAnalysis
- Executar o Checkstyle
Alias de entrada: checkstyleAnalysisEnabled
. boolean
. Valor padrão: false
.
Executa a ferramenta Checkstyle com as verificações sun padrão. Os resultados são carregados como artefatos de build.
findBugsRunAnalysis
- Executar FindBugs
Alias de entrada: findbugsAnalysisEnabled
. boolean
. Valor padrão: false
.
Usa a ferramenta de análise estática FindBugs para procurar bugs no código. Os resultados são carregados como artefatos de build. No Gradle 6.0, esse plug-in foi removido. Em vez disso, use o plug-in SpotBugs.
pmdRunAnalysis
- Executar PMD
Alias de entrada: pmdAnalysisEnabled
. boolean
. Valor padrão: false
.
Usa a ferramenta de análise estática java pmd para procurar bugs no código. Os resultados são carregados como artefatos de build.
spotBugsAnalysis
- Executar SpotBugs
Alias de entrada: spotBugsAnalysisEnabled
. boolean
. Valor padrão: false
.
É executado spotBugs
quando true
. Esse plug-in funciona com o Gradle v5.6 ou posterior. Saiba mais sobre como usar o plug-in SpotBugs Gradle. O plug-in pode funcionar de maneira inesperada ou pode não funcionar com uma versão anterior do Gradle.
spotBugsGradlePluginVersionChoice
- Versão do plug-in spotbugs
string
. Obrigatório quando spotBugsAnalysisEnabled = true
. Valores permitidos: specify
(especifique o número da versão) build
(Use o plug-in aplicado em seu build.gradle). Valor padrão: specify
.
Especifica a versão do plug-in Gradle SpotBugs a ser usada. A versão pode ser declarada no arquivo de configuração do Gradle ou a versão pode ser especificada nessa cadeia de caracteres.
spotbugsGradlePluginVersion
- Número de versão
string
. Obrigatório quando spotBugsAnalysisEnabled = true && spotBugsGradlePluginVersionChoice = specify
. Valor padrão: 4.7.0
.
Contém o número de versão do plug-in SpotBugs Gradle.
Opções de controle de tarefa
Todas as tarefas têm opções de controle além de suas entradas de tarefa. Para obter mais informações, consulte Opções de controle e propriedades comuns da tarefa.
Variáveis de saída
Nenhum.
Comentários
A configuração da análise do SonarQube foi movida para as extensões SonarQube ou SonarCloud na tarefa Prepare Analysis Configuration
.
Use essa tarefa para compilar usando um script de wrapper do Gradle.
Como fazer gerar um wrapper do meu projeto Gradle?
O wrapper Gradle permite que o agente de build baixe e configure o ambiente Gradle exato que é verificado no repositório sem ter nenhuma configuração de software no próprio agente de build que não seja a JVM.
Crie o wrapper Gradle emitindo o seguinte comando do diretório do projeto raiz em que reside o build.gradle:
jamal@fabrikam> gradle wrapper
Carregue o wrapper do Gradle no repositório remoto.
Há um artefato binário gerado pelo wrapper gradle (localizado em
gradle/wrapper/gradle-wrapper.jar
). Esse arquivo binário é pequeno e não requer atualização. Se você precisar alterar a configuração do Gradle executada no agente de build, atualize ogradle-wrapper.properties
.O repositório deve ter esta aparência:
|-- gradle/
`-- wrapper/
`-- gradle-wrapper.jar
`-- gradle-wrapper.properties
|-- src/
|-- .gitignore
|-- build.gradle
|-- gradlew
|-- gradlew.bat
Como fazer corrigir tempos limite ao baixar dependências?
Para corrigir erros como Read timed out
ao baixar dependências, os usuários do Gradle 4.3+ podem alterar o tempo limite adicionando -Dhttp.socketTimeout=60000 -Dhttp.connectionTimeout=60000
a Options
. Isso aumenta o tempo limite de 10 segundos para 1 minuto.
Exemplos
Criar seu aplicativo Java com o Gradle
Requisitos
Requisito | Descrição |
---|---|
Tipos de pipeline | YAML, build clássico |
Executa em | Agent, DeploymentGroup |
Demandas | Nenhum |
Funcionalidades | Essa tarefa não atende a nenhuma demanda para tarefas subsequentes no trabalho. |
Restrições de comando | Qualquer |
Variáveis configuráveis | Qualquer |
Versão do agente | 1.91.0 ou superior |
Categoria da tarefa | Build |