Compartilhar via


Maven@1 – Tarefa Maven v1

Use essa tarefa para criar com o Apache Maven.

Esta versão da tarefa foi preterida; use Maven@4.

Sintaxe

# Maven v1
# Build with Apache Maven.
- task: Maven@1
  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 TFS/Team Services. 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.
    #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.
  # Advanced
    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.
    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: true # boolean. Alias: mavenFeedAuthenticate. Authenticate built-in Maven feeds. Default: true.
  # 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. Optional. Use when sqAnalysisEnabled = true. SonarQube Project Name. 
    #sonarQubeProjectKey: # string. Alias: sqProjectKey. Optional. Use when sqAnalysisEnabled = true. SonarQube Project Key. 
    #sonarQubeProjectVersion: # string. Alias: sqProjectVersion. Optional. Use when sqAnalysisEnabled = true. SonarQube Project Version. 
    #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.
    #pmdRunAnalysis: false # boolean. Alias: pmdAnalysisEnabled. Run PMD. Default: false.
    #findBugsRunAnalysis: false # boolean. Alias: findbugsAnalysisEnabled. Run FindBugs. Default: false.

Entradas

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.


(s) goals - Goal(s)
string. Valor padrão: package.


opções de options -
string.


publishJUnitResults - Publicar no TFS/Team Services
boolean. Valor padrão: true.

Especifica a opção de publicar os resultados do teste JUnit produzidos pelo build do Maven no TFS/Team Services. Cada arquivo de resultados de teste correspondente Test Results Files será publicado como uma execução de teste no TFS/Team Services.


testResultsFiles - arquivos de resultados de teste
string. Necessário quando publishJUnitResults = true. Valor padrão: **/TEST-*.xml.

Especifica o caminho e o padrão dos arquivos de resultados de teste a serem publicados. Por exemplo, **/TEST-*.xml para todos os arquivos XML com um nome que 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 - de título de execução de teste
string. Opcional. Use quando publishJUnitResults = true.

Especifica um nome para a execução do teste.


da Ferramenta de Cobertura de Código codeCoverageToolOption -
Alias de entrada: codeCoverageTool. string. Valores permitidos: None, Cobertura, JaCoCo. Valor padrão: None.

Especifica a ferramenta de cobertura de código.


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 de 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 os 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.


diretórios de arquivos de origem codeCoverageSourceDirectories -
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 usarão para realçar o código-fonte. Por exemplo, src/java,src/Test.


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.


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.


jdkVersionOption - versão do JDK
Alias de entrada: jdkVersion. string. Opcional. Use quando javaHomeSelection = JDKVersion. Valores permitidos: default, 1.9 (JDK 9), 1.8 (JDK 8), 1.7 (JDK 7), 1.6 (JDK 6). Valor padrão: default.

Tenta descobrir o caminho para a versão do JDK selecionada e define JAVA_HOME adequadamente.


jdkDirectory - de caminho do JDK
Alias de entrada: jdkUserInputPath. string. Necessário quando javaHomeSelection = Path.

Define JAVA_HOME para o caminho fornecido.


jdkArchitectureOption - de arquitetura do JDK
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.

Usa 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 feeds internos do Maven
Alias de entrada: mavenFeedAuthenticate. boolean. Valor padrão: true.

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.


sonarQubeRunAnalysis - executar de análise do SonarQube
Alias de entrada: sqAnalysisEnabled. boolean. Valor padrão: false.

Executa um de análise do SonarQube depois de executar as metas atuais. install ou package metas devem ser executadas primeiro.


sonarQubeServiceEndpoint - de ponto de extremidade do SonarQube
Alias de entrada: sqConnectedServiceName. string. Necessário quando sqAnalysisEnabled = true.

Especifica o ponto de extremidade genérico do servidor SonarQube.


sonarQubeProjectName - de nome do projeto SonarQube
Alias de entrada: sqProjectName. string. Opcional. Use quando sqAnalysisEnabled = true.

Especifica o nome do projeto SonarQube, por exemplo, sonar.projectName.


de chave do projeto sonarQubeProjectKey - SonarQube
Alias de entrada: sqProjectKey. string. Opcional. Use quando sqAnalysisEnabled = true.

Especifica a chave exclusiva do projeto SonarQube, por exemplo, sonar.projectKey.


sonarQubeProjectVersion - de versão do projeto SonarQube
Alias de entrada: sqProjectVersion. string. Opcional. Use quando sqAnalysisEnabled = true.

Especifica a versão do projeto SonarQube, por exemplo, sonar.projectVersion.


sonarQubeSpecifyDB - A versão do servidor SonarQube é inferior a 5.2
Alias de entrada: sqDbDetailsRequired. boolean. Opcional. Use quando sqAnalysisEnabled = true. Valor padrão: false.

Se estiver usando um servidor SonarQube 5.1 ou inferior, você deverá especificar os detalhes da conexão do banco de dados.


sonarQubeDBUrl - de cadeia de conexão de banco de dados
Alias de entrada: sqDbUrl. string. Opcional. Use quando sqDbDetailsRequired = true.

Use apenas para o servidor SonarQube 5.1 e inferior.
Especifica a configuração de conexão de banco de dados (por exemplo, sonar.jdbc.url ou jdbc:jtds:sqlserver://localhost/sonar;SelectMethod=Cursor).


sonarQubeDBUsername - de nome de usuário do banco de dados
Alias de entrada: sqDbUsername. string. Opcional. Use quando sqDbDetailsRequired = true.

Use apenas para o servidor SonarQube 5.1 e inferior.
Especifica o nome de usuário do usuário do banco de dados (por exemplo, sonar.jdbc.username).


sonarQubeDBPassword - de senha de usuário do banco de dados
Alias de entrada: sqDbPassword. string. Opcional. Use quando sqDbDetailsRequired = true.

Use apenas para o servidor SonarQube 5.1 e inferior.
Especifica a senha do usuário do banco de dados (por exemplo, sonar.jdbc.password).


sonarQubeIncludeFullReport - Incluir o relatório de análise completa no resumo do build (SQ 5.3+)
Alias de entrada: sqAnalysisIncludeFullReport. boolean. Opcional. Use quando sqAnalysisEnabled = true. Valor padrão: true.

Essa opção atrasará o build até que a análise do SonarQube seja concluída.


sonarQubeFailWhenQualityGateFails - Falha na compilação sobre falha de porta de qualidade (SQ 5.3+)
Alias de entrada: sqAnalysisBreakBuildIfQualityGateFailed. boolean. Opcional. Use quando sqAnalysisEnabled = true.

Essa opção só está disponível ao usar um servidor SonarQube 5.3 ou superior. Introduz atrasos, pois o build deve aguardar o SonarQube concluir a análise. Mais informações sobre os portões de qualidade SonarQube.


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


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.

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