Compartir vía


Maven@4: tarea de Maven v4

Compile, pruebe e implemente con Apache Maven.

Sintaxis

# 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.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 conexión de Azure Resource Manager
Alias de entrada: ConnectedServiceName. string.

Especifique una conexión de servicio de Azure Resource Manager configurada con la federación de identidades de carga de trabajo para usar AzurePipelinesCredential en las pruebas de integración. Para más información, consulte Uso de AzurePipelinesCredential en pruebas de integración.

Nota

Esta entrada solo admite conexiones de servicio arm configuradas para usar la federación de identidades de carga de trabajo.


mavenPOMFile - archivo POM de Maven
string. Obligatorio. Valor predeterminado: pom.xml.

Especifica la ruta de acceso relativa de la raíz del repositorio al archivo POM de Maven. Consulte Introducción al POM para obtener más información.


goals - objetivos
string. Valor predeterminado: package.

(Opcional) Establézcalo en package para compilar el código y empaquetarlo en un archivo .war. Si deja este argumento en blanco, se producirá un error en la compilación. Consulte Introducción al ciclo de vida de compilación de Maven para obtener más información.


opciones de
string.

(Opcional) Especifica las opciones de línea de comandos de Maven que quiera usar.


publishJUnitResults - publicar en Azure Pipelines
boolean. Valor predeterminado: true.

Especifica la opción de publicar los resultados de prueba de JUnit generados por la compilación de Maven en Azure Pipelines. Cada archivo de resultados de pruebas coincidentes Test Results Files se publicará como una ejecución de prueba en Azure Pipelines.


testResultsFiles - archivos de resultados de pruebas
string. Obligatorio cuando publishJUnitResults = true. Valor predeterminado: **/surefire-reports/TEST-*.xml.

Especifica la ruta de acceso y el patrón de los archivos de resultados de pruebas que se van a publicar.
Se pueden usar caracteres comodín.
Más información sobre los patrones de coincidencia de archivos .
Por ejemplo, **/TEST-*.xml para todos los archivos XML cuyo nombre comienza por TEST-. Si no se especifica ninguna ruta de acceso raíz, los archivos coinciden debajo del directorio de trabajo predeterminado, cuyo valor está disponible en la variable $(System.DefaultWorkingDirectory). Por ejemplo, un valor de **/TEST-*.xml provocará realmente la coincidencia de archivos de $(System.DefaultWorkingDirectory)/**/TEST-*.xml.


testRunTitle - título de ejecución de pruebas
string. Opcional. Use cuando publishJUnitResults = true.

Especifica un nombre para la ejecución de pruebas.


allowBrokenSymlinks - Permitir vínculos simbólicos rotos
Alias de entrada: allowBrokenSymbolicLinks. boolean. Opcional. Use cuando publishJUnitResults = true. Valor predeterminado: true.

Si se establece en false, se produce un error en la compilación cuando la tarea encuentra un vínculo simbólico roto mientras publica el resultado de las pruebas.


de la herramienta de cobertura de código de
Alias de entrada: codeCoverageTool. string. Valores permitidos: None, Cobertura, JaCoCo. Valor predeterminado: None.

Especifica la herramienta de cobertura de código. Al habilitar la cobertura de código, se inserta el objetivo limpio en la lista de objetivos de Maven cuando se ejecuta Maven.


codeCoverageClassFilter - filtros de inclusión y exclusión de clases
Alias de entrada: classFilter. string. Opcional. Use cuando codeCoverageTool != None.

Especifica una lista separada por comas de filtros para incluir o excluir clases de recopilación de cobertura de código. Por ejemplo, +:com.*,+:org.*,-:my.app*.*.


codeCoverageClassFilesDirectories - directorios de archivos de clase
Alias de entrada: classFilesDirectories. string. Opcional. Use cuando codeCoverageTool = JaCoCo.

Este campo es necesario para un proyecto de varios módulos.
Especifica una lista separada por comas de rutas de acceso relativas del archivo POM de Maven a directorios que contienen archivos de clase y archivos de archivo (JAR, WAR, etc.). La cobertura de código se notifica para los archivos de clase de estos directorios. Por ejemplo, target/classes,target/testClasses.


codeCoverageSourceDirectories - directorios de archivos de origen
Alias de entrada: srcDirectories. string. Opcional. Use cuando codeCoverageTool = JaCoCo.

Este campo es necesario para un proyecto de varios módulos.
Especifica una lista separada por comas de rutas de acceso relativas del archivo POM de Maven a directorios de código fuente. Los informes de cobertura de código los usan para resaltar el código fuente. Por ejemplo, src/java,src/Test.


codeCoverageFailIfEmpty - Error cuando faltan resultados de cobertura de código
Alias de entrada: failIfCoverageEmpty. boolean. Opcional. Use cuando codeCoverageTool != None. Valor predeterminado: false.

Se produce un error en la compilación si la cobertura de código no genera ningún resultado para publicar.


codeCoverageRestoreOriginalPomXml - Restaurar pom.xml original después de de ejecución de tareas
Alias de entrada: restoreOriginalPomXml. boolean. Opcional. Use cuando codeCoverageTool != None. Valor predeterminado: false.

La cobertura de código modifica pom.xml para generar resultados. Use esta opción si necesita mantener el pom.xmloriginal.


javaHomeOption - Establecer JAVA_HOME
Alias de entrada: javaHomeSelection. string. Obligatorio. Valores permitidos: JDKVersion (versión de JDK), Path. Valor predeterminado: JDKVersion.

Establece JAVA_HOME seleccionando una versión de JDK que se detectará durante las compilaciones o escribiendo manualmente una ruta de acceso de JDK. Si ya tiene Java instalado en el equipo del agente, puede especificarlo configurando javaHomeOption como path y jdkDirectory como ruta de acceso al directorio instalado de JDK.


de la versión de JDK de
Alias de entrada: jdkVersion. string. Opcional. Use cuando javaHomeSelection = JDKVersion. Valores permitidos: default, 1.17 (JDK 17), 1.11 (JDK 11), 1.10 (JDK 10 (fuera de soporte)), 1.9 (JDK 9 (fuera de soporte)), 1.8 (JDK 8), 1.7 (JDK 7), 1.6 (JDK 6 (fuera de soporte)). Valor predeterminado: default.

Intenta detectar la ruta de acceso a la versión de JDK seleccionada y establece JAVA_HOME en consecuencia.
Nota: Si se ejecuta en un agente que no está hospedado por Microsoft, y la versión de Java solicitada no es la indicada por la variable JAVA_HOME establecida en el equipo del agente, la tarea se basará en la variable JAVA_HOME_{version}_{arch} (por ejemplo, JAVA_HOME_8_X64) para buscar el JDK necesario. Asegúrese de que esta variable está establecida en agentes autohospedados para cualquier versión y arquitectura del JDK que pueda solicitar este parámetro o jdkArchitecture.


jdkDirectory - de ruta de acceso de JDK
Alias de entrada: jdkUserInputPath. string. Obligatorio cuando javaHomeSelection = Path.

Establece JAVA_HOME en la ruta de acceso especificada.


de arquitectura de JDK de
Alias de entrada: jdkArchitecture. string. Opcional. Use cuando jdkVersion != default. Valores permitidos: x86, x64. Valor predeterminado: x64.

Proporciona la arquitectura (x86, x64) del JDK.


de la versión de Maven de
Alias de entrada: mavenVersionSelection. string. Obligatorio. Valores permitidos: Default, Path (ruta de acceso personalizada). Valor predeterminado: Default.

Especifica la versión predeterminada de Maven o la versión de la ruta de acceso personalizada especificada.


mavenDirectory - ruta de acceso de Maven
Alias de entrada: mavenPath. string. Obligatorio cuando mavenVersionSelection = Path.

Proporciona la ruta de acceso personalizada a la instalación de Maven (por ejemplo, /usr/share/maven).


mavenSetM2Home - Establecer M2_HOME variable
boolean. Opcional. Use cuando mavenVersionSelection = Path. Valor predeterminado: false.

Establece la variable M2_HOME en una ruta de instalación personalizada de Maven.


mavenOptions - Establecer MAVEN_OPTS en
Alias de entrada: mavenOpts. string. Valor predeterminado: -Xmx1024m.

Establece la variable de entorno MAVEN_OPTS, que se usa para enviar argumentos de línea de comandos para iniciar la JVM. La marca -Xmx especifica la memoria máxima disponible para la JVM.


mavenAuthenticateFeed - autenticación con fuentes de artefactos
Alias de entrada: mavenFeedAuthenticate. boolean. Valor predeterminado: false.

Se autentica automáticamente con fuentes de Azure Artifacts. Si las fuentes artifacts no están en uso, anule la selección de esta opción para compilaciones más rápidas.


effectivePomSkip - Omitir la generación eficaz de POM al autenticarse con fuentes de artefactos
Alias de entrada: skipEffectivePom. boolean. Valor predeterminado: false.

Se autentica con fuentes artifacts con el pomo solo.


sonarQubeRunAnalysis - ejecutar análisis de SonarQube o SonarCloud
Alias de entrada: sqAnalysisEnabled. boolean. Valor predeterminado: false.

Esta opción ha cambiado de usar la versión 1 de la tarea de Maven a usar las extensiones de Marketplace de SonarQu be y SonarCloud marketplace.
Habilite esta opción para ejecutar análisis de SonarQube o SonarCloud después de ejecutar objetivos en el campo Objetivos de . El instalar o paquete objetivo debe ejecutarse primero. Antes de esta tarea de Maven, también debe agregar una tarea Preparar configuración de análisis de una de las extensiones a la canalización de compilación.


isJacocoCoverageReportXML - uso de informes de Jacoco XML para el análisis de SonarQube
boolean. Opcional. Use cuando sqAnalysisEnabled = true && codeCoverageTool = JaCoCo. Valor predeterminado: false.

Usa informes de Jacoco XML para el análisis de SonarQube. Obtenga más información sobre los informes de prueba de .


sqMavenPluginVersionChoice - escáner SonarQube para la versión de Maven
string. Obligatorio cuando sqAnalysisEnabled = true. Valores permitidos: latest (use la versión más reciente), pom (use la versión declarada en el pom.xml). Valor predeterminado: latest.

Especifica la versión del complemento SonarQube Maven que se va a usar. Puede usar la versión más reciente o confiar en la versión de la pom.xml.


checkStyleRunAnalysis - ejecutar checkstyle
Alias de entrada: checkstyleAnalysisEnabled. boolean. Valor predeterminado: false.

Ejecuta la herramienta Checkstyle con las comprobaciones predeterminadas de Sun. Si no se especifica ninguna configuración checkstyle en el archivo pom.xml, se usan comprobaciones sun predeterminadas. Los resultados se cargan como artefactos de compilación.


pmdRunAnalysis - ejecutar pmD
Alias de entrada: pmdAnalysisEnabled. boolean. Valor predeterminado: false.

Usa la herramienta de análisis estático de PMD para buscar errores en el código. Los resultados se cargan como artefactos de compilación.


findBugsRunAnalysis - ejecutar findbugs
Alias de entrada: findbugsAnalysisEnabled. boolean. Valor predeterminado: false.

Usa la herramienta de análisis estático FindBugs para buscar errores en el código. Los resultados se cargan como artefactos de compilación.


spotBugsRunAnalysis - ejecutar el análisis de SpotBugs
Alias de entrada: spotBugsAnalysisEnabled. boolean. Valor predeterminado: false.

Habilite esta opción para ejecutar el complemento de análisis de código SpotBugs. Más información sobre el complemento SpotBugs Maven.


spotBugsVersion - número de versión
Alias de entrada: spotBugsMavenPluginVersion. string. Opcional. Use cuando spotBugsAnalysisEnabled = true. Valor predeterminado: 4.5.3.0.

Obtenga información sobre las versiones disponibles de SpotBugs.


spotBugsGoal - El objetivo del complemento spotbugs
string. Opcional. Use cuando spotBugsAnalysisEnabled = true. Valores permitidos: spotbugs ("spotbugs": crea un informe sobre los errores encontrados), check ("comprobar" : se produce un error en la canalización si se detectaron errores). Valor predeterminado: spotbugs.

Especifica el objetivo del complemento. Obtenga más información sobre los objetivos de SpotBugs .


failWhenBugsFound - Error cuando se encuentran errores con spotbugs:check
Alias de entrada: spotBugsFailWhenBugsFound | sbFailWhenBugsFound. boolean. Opcional. Use cuando spotBugsAnalysisEnabled = true && spotBugsGoal = check. Valor predeterminado: true.

Se produce un error cuando se detectan errores si se especifica De comprobación del objetivo. Obtenga más información sobre los detalles del parámetro SpotBug de .


Opciones de control de tareas

Todas las tareas tienen opciones de control además de sus entradas de tarea. Para obtener más información, consulte Opciones de control y propiedades de tareas comunes.

Variables de salida

Ninguno.

Observaciones

La configuración del análisis de SonarQube se movió a las extensiones sonarQube sonarQube o SonarCloud en la tarea Prepare Analysis Configuration.

Importante

Al usar la opción -q en la MAVEN_OPTS, no se generará correctamente un pom efectivo y es posible que las fuentes de Azure Artifacts no se puedan autenticar.

Importante

Si la versión de JDK que desea usar ya está instalada en el agente, establezca javaHomeOption en path y establezca el jdkDirectory en la ruta de acceso de la versión de JDK. Estas opciones establecen la variable de entorno JAVA_HOME_11_X64, que requiere la tarea maven. Esta variable de entorno se establece automáticamente si usa la tarea del instalador de la herramienta de Java.

Uso de AzurePipelinesCredential en pruebas de integración

Las bibliotecas de identidades de Azure para .NET, C++, Go, Java, JavaScript y Python proporcionan compatibilidad con la federación de identidades de carga de trabajo, por lo que el código ejecutado desde las tareas AzureCLI@2 y AzurePowerShell@5 se puede autenticar con microsoft Entra ID (por ejemplo, para acceder a Azure) mediante la clase AzurePipelinesCredential.

Muchos clientes usan bibliotecas cliente de Azure SDK en pruebas de integración invocadas desde otras tareas. Las tareas DotNetCoreCLI@2, Maven@4 y VSTest@3 pueden acceder a los recursos de Azure mediante la clase AzurePipelinesCredential.

Puede establecer la propiedad connectedService en una conexión de servicio de Azure configurada con la federación de identidades de carga de trabajo. El AzurePipelinesCredential requiere que se establezca SYSTEM_ACCESSTOKEN.

En el ejemplo siguiente se muestra la entrada connectedService en la tarea DotNetCoreCLI@2. el uso de VSTest@3 y Maven@4 es similar.

- task: DotNetCoreCLI@2
  inputs:
    command: 'run'
    connectedService: <Azure service connection configured with workload identity federation>
  env:
    SYSTEM_ACCESSTOKEN: $(System.AccessToken)

Para más información sobre AzurePipelinesCredential, consulte este Mejorar la posición de seguridad en las conexiones de servicio de Azure con AzurePipelinesCredential.

Preguntas más frecuentes

Tengo un proyecto de varios módulos, pero se produce un error en la compilación. ¿Qué debo comprobar?

Asegúrese de que ha especificado #codeCoverageClassFilesDirectories y #codeCoverageSourceDirectories como entrada de tarea. Estos dos parámetros son opcionales para un solo proyecto de módulo, pero son necesarios para proyectos de varios módulos.

Ejemplos

Requisitos

Requisito Descripción
Tipos de canalización YAML, compilación clásica, versión clásica
Se ejecuta en Agente, DeploymentGroup
demandas Los agentes autohospedados deben tener funcionalidades que coincidan con los siguientes exigen ejecutar trabajos que usen esta tarea: maven
funcionalidades de Esta tarea no satisface ninguna demanda de tareas posteriores en el trabajo.
restricciones de comandos Cualquier
variables settable Cualquier
Versión del agente 1.89.0 o superior
Categoría de tarea Construir

Consulte también