Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Compilar, testar e implantar com o Apache Maven.
Sintaxe
# Maven v4
# Build, test, and deploy with Apache Maven.
- task: Maven@4
inputs:
#azureSubscription: # string. Alias: ConnectedServiceName. Azure Resource Manager connection.
mavenPOMFile: 'pom.xml' # string. Required. Maven POM file. Default: pom.xml.
#goals: 'package' # string. Goal(s). Default: package.
#options: # string. Options.
# JUnit Test Results
#publishJUnitResults: true # boolean. Publish to Azure Pipelines. Default: true.
testResultsFiles: '**/surefire-reports/TEST-*.xml' # string. Required when publishJUnitResults = true. Test results files. Default: **/surefire-reports/TEST-*.xml.
#testRunTitle: # string. Optional. Use when publishJUnitResults = true. Test run title.
#allowBrokenSymlinks: true # boolean. Alias: allowBrokenSymbolicLinks. Optional. Use when publishJUnitResults = true. Allow broken symbolic links. Default: true.
# Code Coverage
#codeCoverageToolOption: 'None' # 'None' | 'Cobertura' | 'JaCoCo'. Alias: codeCoverageTool. Code coverage tool. Default: None.
#codeCoverageClassFilter: # string. Alias: classFilter. Optional. Use when codeCoverageTool != None. Class inclusion/exclusion filters.
#codeCoverageClassFilesDirectories: # string. Alias: classFilesDirectories. Optional. Use when codeCoverageTool = JaCoCo. Class files directories.
#codeCoverageSourceDirectories: # string. Alias: srcDirectories. Optional. Use when codeCoverageTool = JaCoCo. Source files directories.
#codeCoverageFailIfEmpty: false # boolean. Alias: failIfCoverageEmpty. Optional. Use when codeCoverageTool != None. Fail when code coverage results are missing. Default: false.
#codeCoverageRestoreOriginalPomXml: false # boolean. Alias: restoreOriginalPomXml. Optional. Use when codeCoverageTool != None. Restore original pom.xml after task execution. Default: false.
# Advanced
javaHomeOption: 'JDKVersion' # 'JDKVersion' | 'Path'. Alias: javaHomeSelection. Required. Set JAVA_HOME by. Default: JDKVersion.
#jdkVersionOption: 'default' # 'default' | '1.21' | '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.
mavenVersionOption: 'Default' # 'Default' | 'Path'. Alias: mavenVersionSelection. Required. Maven version. Default: Default.
#mavenDirectory: # string. Alias: mavenPath. Required when mavenVersionSelection = Path. Maven path.
#mavenSetM2Home: false # boolean. Optional. Use when mavenVersionSelection = Path. Set M2_HOME variable. Default: false.
#mavenOptions: '-Xmx1024m' # string. Alias: mavenOpts. Set MAVEN_OPTS to. Default: -Xmx1024m.
#mavenAuthenticateFeed: false # boolean. Alias: mavenFeedAuthenticate. Authenticate with Artifacts feeds. Default: false.
#effectivePomSkip: false # boolean. Alias: skipEffectivePom. Skip generating effective POM while authenticating with Artifacts feeds. Default: false.
# Code Analysis
#sonarQubeRunAnalysis: false # boolean. Alias: sqAnalysisEnabled. Run SonarQube or SonarCloud analysis. Default: false.
#isJacocoCoverageReportXML: false # boolean. Optional. Use when sqAnalysisEnabled = true && codeCoverageTool = JaCoCo. Use XML Jacoco reports for SonarQube analysis. Default: false.
#sqMavenPluginVersionChoice: 'latest' # 'latest' | 'pom'. Required when sqAnalysisEnabled = true. SonarQube scanner for Maven version. Default: latest.
#checkStyleRunAnalysis: false # boolean. Alias: checkstyleAnalysisEnabled. Run Checkstyle. Default: false.
#pmdRunAnalysis: false # boolean. Alias: pmdAnalysisEnabled. Run PMD. Default: false.
#findBugsRunAnalysis: false # boolean. Alias: findbugsAnalysisEnabled. Run FindBugs. Default: false.
#spotBugsRunAnalysis: false # boolean. Alias: spotBugsAnalysisEnabled. Run SpotBugs analysis. Default: false.
#spotBugsVersion: '4.5.3.0' # string. Alias: spotBugsMavenPluginVersion. Optional. Use when spotBugsAnalysisEnabled = true. Version number. Default: 4.5.3.0.
#spotBugsGoal: 'spotbugs' # 'spotbugs' | 'check'. Optional. Use when spotBugsAnalysisEnabled = true. The goal for the spotbugs plugin. Default: spotbugs.
#failWhenBugsFound: true # boolean. Alias: spotBugsFailWhenBugsFound | sbFailWhenBugsFound. Optional. Use when spotBugsAnalysisEnabled = true && spotBugsGoal = check. Fail when bugs are found with spotbugs:check. Default: true.
# Maven v4
# Build, test, and deploy with Apache Maven.
- task: Maven@4
inputs:
mavenPOMFile: 'pom.xml' # string. Required. Maven POM file. Default: pom.xml.
#goals: 'package' # string. Goal(s). Default: package.
#options: # string. Options.
# JUnit Test Results
#publishJUnitResults: true # boolean. Publish to Azure Pipelines. Default: true.
testResultsFiles: '**/surefire-reports/TEST-*.xml' # string. Required when publishJUnitResults = true. Test results files. Default: **/surefire-reports/TEST-*.xml.
#testRunTitle: # string. Optional. Use when publishJUnitResults = true. Test run title.
#allowBrokenSymlinks: true # boolean. Alias: allowBrokenSymbolicLinks. Optional. Use when publishJUnitResults = true. Allow broken symbolic links. Default: true.
# Code Coverage
#codeCoverageToolOption: 'None' # 'None' | 'Cobertura' | 'JaCoCo'. Alias: codeCoverageTool. Code coverage tool. Default: None.
#codeCoverageClassFilter: # string. Alias: classFilter. Optional. Use when codeCoverageTool != None. Class inclusion/exclusion filters.
#codeCoverageClassFilesDirectories: # string. Alias: classFilesDirectories. Optional. Use when codeCoverageTool = JaCoCo. Class files directories.
#codeCoverageSourceDirectories: # string. Alias: srcDirectories. Optional. Use when codeCoverageTool = JaCoCo. Source files directories.
#codeCoverageFailIfEmpty: false # boolean. Alias: failIfCoverageEmpty. Optional. Use when codeCoverageTool != None. Fail when code coverage results are missing. Default: false.
#codeCoverageRestoreOriginalPomXml: false # boolean. Alias: restoreOriginalPomXml. Optional. Use when codeCoverageTool != None. Restore original pom.xml after task execution. Default: false.
# 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.
mavenVersionOption: 'Default' # 'Default' | 'Path'. Alias: mavenVersionSelection. Required. Maven version. Default: Default.
#mavenDirectory: # string. Alias: mavenPath. Required when mavenVersionSelection = Path. Maven path.
#mavenSetM2Home: false # boolean. Optional. Use when mavenVersionSelection = Path. Set M2_HOME variable. Default: false.
#mavenOptions: '-Xmx1024m' # string. Alias: mavenOpts. Set MAVEN_OPTS to. Default: -Xmx1024m.
#mavenAuthenticateFeed: false # boolean. Alias: mavenFeedAuthenticate. Authenticate with Artifacts feeds. Default: false.
#effectivePomSkip: false # boolean. Alias: skipEffectivePom. Skip generating effective POM while authenticating with Artifacts feeds. Default: false.
# Code Analysis
#sonarQubeRunAnalysis: false # boolean. Alias: sqAnalysisEnabled. Run SonarQube or SonarCloud analysis. Default: false.
#isJacocoCoverageReportXML: false # boolean. Optional. Use when sqAnalysisEnabled = true && codeCoverageTool = JaCoCo. Use XML Jacoco reports for SonarQube analysis. Default: false.
#sqMavenPluginVersionChoice: 'latest' # 'latest' | 'pom'. Required when sqAnalysisEnabled = true. SonarQube scanner for Maven version. Default: latest.
#checkStyleRunAnalysis: false # boolean. Alias: checkstyleAnalysisEnabled. Run Checkstyle. Default: false.
#pmdRunAnalysis: false # boolean. Alias: pmdAnalysisEnabled. Run PMD. Default: false.
#findBugsRunAnalysis: false # boolean. Alias: findbugsAnalysisEnabled. Run FindBugs. Default: false.
#spotBugsRunAnalysis: false # boolean. Alias: spotBugsAnalysisEnabled. Run SpotBugs analysis. Default: false.
#spotBugsVersion: '4.5.3.0' # string. Alias: spotBugsMavenPluginVersion. Optional. Use when spotBugsAnalysisEnabled = true. Version number. Default: 4.5.3.0.
#spotBugsGoal: 'spotbugs' # 'spotbugs' | 'check'. Optional. Use when spotBugsAnalysisEnabled = true. The goal for the spotbugs plugin. Default: spotbugs.
#failWhenBugsFound: true # boolean. Alias: spotBugsFailWhenBugsFound | sbFailWhenBugsFound. Optional. Use when spotBugsAnalysisEnabled = true && spotBugsGoal = check. Fail when bugs are found with spotbugs:check. Default: true.
Entradas
azureSubscription
-
de conexão do Azure Resource Manager
Alias de entrada: ConnectedServiceName
.
string
.
Especifique uma conexão de serviço do Azure Resource Manager configurada com a federação de identidade de carga de trabalho para usar do AzurePipelinesCredential em testes de integração. Para obter mais informações, consulte Usar o AzurePipelinesCredential em testes de integração.
Observação
Essa entrada só dá suporte a conexões de serviço do ARM configuradas para usar a federação de identidade de carga de trabalho.
mavenPOMFile
-
de arquivo POM do Maven
string
. Obrigatório Valor padrão: pom.xml
.
Especifica o caminho relativo da raiz do repositório para o arquivo POM do Maven. Consulte Introdução à POM para obter mais informações.
(s) goals
- Goal(s)
string
. Valor padrão: package
.
(Opcional) Defina como package
para compilar seu código e empacotá-lo em um arquivo .war. Se você deixar esse argumento em branco, o build falhará. Consulte Introdução ao ciclo de vida de build do Maven para obter mais informações.
opções de options
-
string
.
(Opcional) Especifica todas as opções de linha de comando do Maven que você deseja usar.
publishJUnitResults
-
Publicar no Azure Pipelines
boolean
. Valor padrão: true
.
Especifica a opção de publicar os resultados do teste JUnit produzidos pelo build do Maven no Azure Pipelines. Cada arquivo de resultados de teste correspondente Test Results Files
será publicado como uma execução de teste no Azure Pipelines.
testResultsFiles
-
arquivos de resultados de teste
string
. Necessário quando publishJUnitResults = true
. Valor padrão: **/surefire-reports/TEST-*.xml
.
Especifica o caminho e o padrão dos arquivos de resultados de teste a serem publicados.
Curingas podem ser usados.
Mais informações sobre padrões de correspondência de arquivos.
Por exemplo, **/TEST-*.xml
para todos os arquivos XML cujo nome começa com TEST-
. Se nenhum caminho raiz for especificado, os arquivos serão correspondidos abaixo do diretório de trabalho padrão, o valor do qual está disponível na variável $(System.DefaultWorkingDirectory)
. Por exemplo, um valor de **/TEST-*.xml
resultará na correspondência de arquivos de $(System.DefaultWorkingDirectory)/**/TEST-*.xml
.
testRunTitle
-
Título da execução de teste
string
. Opcional. Use quando publishJUnitResults = true
.
Especifica um nome para a execução do teste.
allowBrokenSymlinks
-
Permitir links simbólicos quebrados
Alias de entrada: allowBrokenSymbolicLinks
.
boolean
. Opcional. Use quando publishJUnitResults = true
. Valor padrão: true
.
Se definido como false
, falha no build quando a tarefa encontra um link simbólico quebrado durante o resultado dos testes de publicação.
da ferramenta de cobertura de código do codeCoverageToolOption
-
Alias de entrada: codeCoverageTool
.
string
. Valores permitidos: None
, Cobertura
, JaCoCo
. Valor padrão: None
.
Especifica a ferramenta de cobertura de código. Habilitar a cobertura de código insere a meta limpa na lista de metas do Maven quando o Maven é executado.
codeCoverageClassFilter
-
filtros de inclusão/exclusão de classe
Alias de entrada: classFilter
.
string
. Opcional. Use quando codeCoverageTool != None
.
Especifica uma lista separada por vírgulas de filtros para incluir ou excluir classes de coletar cobertura de código. Por exemplo, +:com.*,+:org.*,-:my.app*.*
.
diretórios de arquivos da Classe codeCoverageClassFilesDirectories
-
Alias de entrada: classFilesDirectories
.
string
. Opcional. Use quando codeCoverageTool = JaCoCo
.
Esse campo é necessário para um projeto de vários módulos.
Especifica uma lista separada por vírgulas de caminhos relativos do arquivo POM do Maven para diretórios que contêm arquivos de classe e arquivos de arquivo morto (JAR, WAR etc.). A cobertura de código é relatada para arquivos de classe nesses diretórios. Por exemplo, target/classes,target/testClasses
.
codeCoverageSourceDirectories
-
diretórios de arquivos de origem
Alias de entrada: srcDirectories
.
string
. Opcional. Use quando codeCoverageTool = JaCoCo
.
Esse campo é necessário para um projeto de vários módulos.
Especifica uma lista separada por vírgulas de caminhos relativos do arquivo POM do Maven para diretórios de código-fonte. Os relatórios de cobertura de código os usam para realçar o código-fonte. Por exemplo, src/java,src/Test
.
codeCoverageFailIfEmpty
-
Falhar quando os resultados da cobertura de código estiverem 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.
codeCoverageRestoreOriginalPomXml
-
Restaurar pom.xml original após a execução da tarefa
Alias de entrada: restoreOriginalPomXml
.
boolean
. Opcional. Use quando codeCoverageTool != None
. Valor padrão: false
.
A cobertura de código modifica pom.xml
para produzir resultados. Use essa opção se precisar manter o pom.xml
original.
javaHomeOption
-
definir JAVA_HOME por
Alias de entrada: javaHomeSelection
.
string
. Obrigatório Valores permitidos: JDKVersion
(versão do JDK), Path
. Valor padrão: JDKVersion
.
Define JAVA_HOME
selecionando uma versão do JDK que será descoberta durante builds ou inserindo manualmente um caminho JDK. Se você já tiver o Java instalado no computador do agente, poderá especificá-lo configurando javaHomeOption
como path
e jdkDirectory
como um caminho para o diretório instalado do JDK.
jdkVersionOption
-
versão do JDK
Alias de entrada: jdkVersion
.
string
. Opcional. Use quando javaHomeSelection = JDKVersion
. Valores permitidos: default
, 1.21
(JDK 21), 1.17
(JDK 17), 1.11
(JDK 11), 1.10
(JDK 10 (fora 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 define JAVA_HOME
adequadamente.
Observação: Se estiver em execução em um agente que não está hospedado pela Microsoft e a versão do Java solicitada não for a indicada pela variável JAVA_HOME
definida no computador do agente, a tarefa dependerá da variável JAVA_HOME_{version}_{arch}
(por exemplo: JAVA_HOME_8_X64
) para localizar o JDK necessário. Verifique se essa variável está definida em agentes auto-hospedados para qualquer versão e arquitetura do JDK que possa ser solicitada por esse parâmetro e/ou por jdkArchitecture
.
jdkVersionOption
-
versão do JDK
Alias de entrada: jdkVersion
.
string
. Opcional. Use quando javaHomeSelection = JDKVersion
. Valores permitidos: default
, 1.17
(JDK 17), 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 define JAVA_HOME
adequadamente.
Observação: Se estiver em execução em um agente que não está hospedado pela Microsoft e a versão do Java solicitada não for a indicada pela variável JAVA_HOME
definida no computador do agente, a tarefa dependerá da variável JAVA_HOME_{version}_{arch}
(por exemplo: JAVA_HOME_8_X64
) para localizar o JDK necessário. Verifique se essa variável está definida em agentes auto-hospedados para qualquer versão e arquitetura do JDK que possa ser solicitada por esse parâmetro e/ou por jdkArchitecture
.
jdkDirectory
-
caminho do JDK
Alias de entrada: jdkUserInputPath
.
string
. Necessário quando javaHomeSelection = Path
.
Define JAVA_HOME
para o caminho fornecido.
arquitetura do JDK jdkArchitectureOption
-
Alias de entrada: jdkArchitecture
.
string
. Opcional. Use quando jdkVersion != default
. Valores permitidos: x86
, x64
. Valor padrão: x64
.
Fornece a arquitetura (x86
, x64
) do JDK.
mavenVersionOption
-
versão do Maven
Alias de entrada: mavenVersionSelection
.
string
. Obrigatório Valores permitidos: Default
, Path
(Caminho Personalizado). Valor padrão: Default
.
Especifica a versão padrão do Maven ou a versão no caminho personalizado especificado.
mavenDirectory
-
caminho maven
Alias de entrada: mavenPath
.
string
. Necessário quando mavenVersionSelection = Path
.
Fornece o caminho personalizado para a instalação do Maven (por exemplo: /usr/share/maven
).
mavenSetM2Home
-
Definir M2_HOME variável
boolean
. Opcional. Use quando mavenVersionSelection = Path
. Valor padrão: false
.
Define a variável M2_HOME
como um caminho de instalação personalizado do Maven.
mavenOptions
-
Definir MAVEN_OPTS como
Alias de entrada: mavenOpts
.
string
. Valor padrão: -Xmx1024m
.
Define a variável de ambiente MAVEN_OPTS
, que é usada para enviar argumentos de linha de comando para iniciar a JVM. O sinalizador -Xmx
especifica a memória máxima disponível para a JVM.
mavenAuthenticateFeed
-
Autenticar com feeds de artefatos
Alias de entrada: mavenFeedAuthenticate
.
boolean
. Valor padrão: false
.
Autentica automaticamente com feeds do Azure Artifacts. Se os feeds do Artifacts não estiverem em uso, desmarque essa opção para compilações mais rápidas.
effectivePomSkip
-
Ignorar a geração de POM eficaz durante a autenticação com feeds de artefatos
Alias de entrada: skipEffectivePom
.
boolean
. Valor padrão: false
.
Autentica com feeds de Artefatos usando apenas o POM.
sonarQubeRunAnalysis
-
executar a análise do SonarQube ou do SonarCloud
Alias de entrada: sqAnalysisEnabled
.
boolean
. Valor padrão: false
.
Essa opção passou de usar a versão 1 da tarefa do Maven para usar as extensões sonarQube e do SonarCloud marketplace.
Habilite essa opção para executar de análise do SonarQube ou do SonarCloud após a execução de metas no campo metas. O instalar ou meta de do pacote deve ser executado primeiro. Antes dessa tarefa do Maven, você também deve adicionar uma tarefa Preparar Configuração de Análise de uma das extensões ao pipeline de build.
isJacocoCoverageReportXML
-
usar relatórios de Jacoco XML para análise do SonarQube
boolean
. Opcional. Use quando sqAnalysisEnabled = true && codeCoverageTool = JaCoCo
. Valor padrão: false
.
Usa relatórios de Jacoco XML para análise do SonarQube. Saiba mais sobre relatórios de teste.
sqMavenPluginVersionChoice
-
scanner SonarQube para a versão do Maven
string
. Necessário quando sqAnalysisEnabled = true
. Valores permitidos: latest
(usar a versão mais recente), pom
(Use a versão declarada em seu pom.xml). Valor padrão: latest
.
Especifica a versão do plug-in SonarQube Maven a ser usada. Você pode usar a versão mais recente ou contar com a versão em seu pom.xml
.
checkStyleRunAnalysis
-
executar de estilo de verificação
Alias de entrada: checkstyleAnalysisEnabled
.
boolean
. Valor padrão: false
.
Executa a ferramenta Checkstyle com as verificações sun padrão. Se nenhuma configuração checkstyle for especificada no arquivo pom.xml
, as verificações sun padrão serão usadas. Os resultados são carregados como artefatos de build.
pmdRunAnalysis
-
executar o PMD
Alias de entrada: pmdAnalysisEnabled
.
boolean
. Valor padrão: false
.
Usa a ferramenta de análise estática do PMD para procurar bugs no código. 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.
spotBugsRunAnalysis
-
executar de análise de SpotBugs
Alias de entrada: spotBugsAnalysisEnabled
.
boolean
. Valor padrão: false
.
Habilite essa opção para executar o plug-in de análise de código do SpotBugs. Mais informações sobre o plug-in SpotBugs Maven.
de número de versão spotBugsVersion
-
Alias de entrada: spotBugsMavenPluginVersion
.
string
. Opcional. Use quando spotBugsAnalysisEnabled = true
. Valor padrão: 4.5.3.0
.
Saiba mais sobre as versões disponíveis do SpotBugs.
spotBugsGoal
-
A meta para o plug-in de spotbugs
string
. Opcional. Use quando spotBugsAnalysisEnabled = true
. Valores permitidos: spotbugs
("spotbugs" – Cria um relatório sobre bugs encontrados), check
("check" – o pipeline falha se bugs foram detectados). Valor padrão: spotbugs
.
Especifica a meta do plug-in. Saiba mais sobre metas do SpotBugs.
failWhenBugsFound
-
Falha quando bugs são encontrados com spotbugs:check
Alias de entrada: spotBugsFailWhenBugsFound | sbFailWhenBugsFound
.
boolean
. Opcional. Use quando spotBugsAnalysisEnabled = true && spotBugsGoal = check
. Valor padrão: true
.
Falha quando bugs são encontrados se Verificar Meta é especificado. Saiba mais sobre detalhes do parâmetro SpotBug.
Opções de controle de tarefa
Todas as tarefas têm opções de controle além das suas entradas de tarefas. Para obter mais informações, consulte as opções de Controle de e as propriedades comuns da tarefa.
Variáveis de saída
Nenhum.
Observações
A configuração da análise do SonarQube foi movida para as extensões SonarQube ou SonarCloud na tarefa Preparar a Configuração de Análise.
Importante
Ao usar a opção -q
em seu MAVEN_OPTS
, um pom efetivo não será gerado corretamente e os feeds do Azure Artifacts podem não ser capazes de ser autenticados.
Importante
Se a versão do JDK que você deseja usar já estiver instalada no agente, defina javaHomeOption
como path
e defina o jdkDirectory
para o caminho da versão do JDK. Essas opções definem a variável de ambiente JAVA_HOME_11_X64
, que é exigida pela tarefa Maven. Essa variável de ambiente será definida automaticamente se você estiver usando a tarefa do instalador da Ferramenta Java.
Usar o AzurePipelinesCredential em testes de integração
As bibliotecas de Identidade do Azure para .NET, C++, Go, Java, JavaScript e Python oferecem suporte parade federação de identidade de carga de trabalho, portanto, o código executado das tarefas AzureCLI@2 e AzurePowerShell@5 pode se autenticar com a ID do Microsoft Entra (por exemplo, para acessar o Azure) usando a classe AzurePipelinesCredential
.
Muitos clientes estão usando bibliotecas de clientes do SDK do Azure em testes de integração invocados de outras tarefas. As tarefas DotNetCoreCLI@2, Maven@4 e VSTest@3 podem acessar recursos do Azure usando a classe AzurePipelinesCredential
.
Você pode definir a propriedade connectedServiceName
para uma conexão de serviço do Azure configurada com a federação de identidade de carga de trabalho. O AzurePipelinesCredential
requer que SYSTEM_ACCESSTOKEN seja definido.
O exemplo a seguir mostra a entrada connectedServiceName
na tarefa DotNetCoreCLI@2
.
VSTest@3
e Maven@4
uso é semelhante.
- task: DotNetCoreCLI@2
inputs:
command: 'run'
connectedServiceName: <Azure service connection configured with workload identity federation>
env:
SYSTEM_ACCESSTOKEN: $(System.AccessToken)
Para obter mais informações sobre AzurePipelinesCredential
, consulte Aprimorar a postura de segurança nas conexões de serviço do Azure com o AzurePipelinesCredential.
Perguntas Freqüentes
Tenho um projeto de vários módulos, mas meu build está falhando. O que devo verificar?
Verifique se você especificou #codeCoverageClassFilesDirectories
e #codeCoverageSourceDirectories
como uma entrada de tarefa. Esses dois parâmetros são opcionais para um único projeto de módulo, mas são necessários para projetos de vários módulos.
Exemplos
Requisitos
Requisito | Descrição |
---|---|
Tipos de pipeline | YAML, build clássico, versão clássica |
Execuções em | Agent, DeploymentGroup |
de demandas | Os agentes auto-hospedados devem ter recursos que correspondam às seguintes demandas de para executar trabalhos que usam esta tarefa: maven |
recursos | Essa tarefa não atende a nenhuma demanda para tarefas subsequentes no trabalho. |
restrições de comando | Qualquer |
variáveis settable | Qualquer |
Versão do agente | 1.89.0 ou superior |
Categoria de tarefa | Construir |
Consulte também
- de autenticação do Maven
- Publicar artefatos do Maven com o Azure Pipelines
- do Instalador de Ferramentas Java
- criar aplicativos Java