Freigeben über


Maven@1 – Maven v1-Aufgabe

Verwenden Sie diese Aufgabe, um mit Apache Maven zu erstellen.

Syntax

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

Eingaben

mavenPOMFile - Maven POM-Datei
string. Erforderlich. Standardwert. pom.xml.

Gibt den relativen Pfad vom Repositorystamm zur Maven POM-Datei an.


goals - Ziel(e)
string. Standardwert. package.


options - Optionen
string.


publishJUnitResults - Veröffentlichen in TFS/Team Services
boolean. Standardwert. true.

Gibt die Option an, die vom Maven-Build erstellten JUnit-Testergebnisse in TFS/Team Services zu veröffentlichen. Jeder Testergebnisdateiabgleich Test Results Files wird als Testlauf in TFS/Team Services veröffentlicht.


testResultsFiles - Testergebnisdateien
string. Erforderlich, wenn publishJUnitResults = true. Standardwert. **/TEST-*.xml.

Gibt den Pfad und das Muster der zu veröffentlichenden Testergebnisdateien an. Beispielsweise **/TEST-*.xml für alle XML-Dateien mit einem Namen, der mit TEST-beginnt. Wenn kein Stammpfad angegeben wird, werden Dateien unter dem Standardarbeitsverzeichnis abgeglichen, dessen Wert in der Variablen $(System.DefaultWorkingDirectory)verfügbar ist. Beispielsweise führt der Wert von **/TEST-*.xml tatsächlich zu übereinstimmenden Dateien aus $(System.DefaultWorkingDirectory)/**/TEST-*.xml.


testRunTitle - Titel der Testausführung
string. Optional. Verwenden Sie , wenn publishJUnitResults = true.

Gibt einen Namen für die Testausführung an.


codeCoverageToolOption - Code Coverage-Tool
Eingabealias: codeCoverageTool. string. Zulässige Werte: None, Cobertura und JaCoCo. Standardwert. None.

Gibt das Code Coverage-Tool an.


codeCoverageClassFilter - Klasseneinschluss-/Ausschlussfilter
Eingabealias: classFilter. string. Optional. Verwenden Sie , wenn codeCoverageTool != None.

Gibt eine durch Trennzeichen getrennte Liste von Filtern an, die Klassen vom Sammeln von Code Coverage einschließen oder ausschließen sollen. Beispiel: +:com.*,+:org.*,-:my.app*.*.


codeCoverageClassFilesDirectories - Klassendateienverzeichnisse
Eingabealias: classFilesDirectories. string. Optional. Verwenden Sie , wenn codeCoverageTool = JaCoCo.

Dieses Feld ist für ein Projekt mit mehreren Modulen erforderlich.
Gibt eine durch Trennzeichen getrennte Liste der relativen Pfade von der Maven POM-Datei zu den Verzeichnissen an, die Klassendateien und Archivdateien (JAR, WAR usw.) enthalten. Code Coverage wird für Klassendateien in diesen Verzeichnissen gemeldet. Beispiel: target/classes,target/testClasses.


codeCoverageSourceDirectories - Verzeichnisse für Quelldateien
Eingabealias: srcDirectories. string. Optional. Verwenden Sie , wenn codeCoverageTool = JaCoCo.

Dieses Feld ist für ein Projekt mit mehreren Modulen erforderlich.
Gibt eine durch Trennzeichen getrennte Liste von relativen Pfaden von der Maven POM-Datei zu Quellcodeverzeichnissen an. Code Coverage-Berichte verwenden diese, um Quellcode hervorzuheben. Beispiel: src/java,src/Test.


codeCoverageFailIfEmpty - Fehler, wenn Code Coverage-Ergebnisse fehlen
Eingabealias: failIfCoverageEmpty. boolean. Optional. Verwenden Sie , wenn codeCoverageTool != None. Standardwert. false.

Der Build schlägt fehl, wenn die Code coverage keine Ergebnisse für die Veröffentlichung erzeugt hat.


javaHomeOption - Festlegen von JAVA_HOME nach
Eingabealias: javaHomeSelection. string. Erforderlich. Zulässige Werte: JDKVersion (JDK-Version), Path. Standardwert. JDKVersion.

Legt JAVA_HOME entweder durch Auswählen einer JDK-Version fest, die während des Builds ermittelt wird, oder durch manuelle Eingabe eines JDK-Pfads.


jdkVersionOption - JDK-Version
Eingabealias: jdkVersion. string. Optional. Verwenden Sie , wenn javaHomeSelection = JDKVersion. Zulässige Werte: default, 1.9 (JDK 9), 1.8 (JDK 8), 1.7 (JDK 7), 1.6 (JDK 6). Standardwert. default.

Versucht, den Pfad zur ausgewählten JDK-Version zu ermitteln, und legt entsprechend fest JAVA_HOME .


jdkDirectory - JDK-Pfad
Eingabealias: jdkUserInputPath. string. Erforderlich, wenn javaHomeSelection = Path.

Legt JAVA_HOME auf den angegebenen Pfad fest.


jdkArchitectureOption - JDK-Architektur
Eingabealias: jdkArchitecture. string. Optional. Verwenden Sie , wenn jdkVersion != default. Zulässige Werte: x86, x64. Standardwert. x64.

Stellt die Architektur (x86, x64) des JDK bereit.


mavenVersionOption - Maven-Version
Eingabealias: mavenVersionSelection. string. Erforderlich. Zulässige Werte: Default, Path (benutzerdefinierter Pfad). Standardwert. Default.

Verwendet entweder die Maven-Standardversion oder die Version im angegebenen benutzerdefinierten Pfad.


mavenDirectory - Maven-Pfad
Eingabealias: mavenPath. string. Erforderlich, wenn mavenVersionSelection = Path.

Stellt den benutzerdefinierten Pfad zur Maven-Installation bereit (z. B. /usr/share/maven).


mavenSetM2Home - Festlegen M2_HOME Variablen
boolean. Optional. Verwenden Sie , wenn mavenVersionSelection = Path. Standardwert. false.

Legt die M2_HOME Variable auf einen benutzerdefinierten Maven-Installationspfad fest.


mavenOptions - Legen Sie MAVEN_OPTS auf fest.
Eingabealias: mavenOpts. string. Standardwert. -Xmx1024m.

Legt die Umgebungsvariable MAVEN_OPTS fest, die zum Senden von Befehlszeilenargumenten zum Starten der JVM verwendet wird. Das -Xmx Flag gibt den maximalen Arbeitsspeicher an, der für die JVM verfügbar ist.


mavenAuthenticateFeed - Authentifizieren integrierter Maven-Feeds
Eingabealias: mavenFeedAuthenticate. boolean. Standardwert. true.

Authentifiziert sich automatisch mit Azure Artifacts-Feeds. Wenn Artefaktefeeds nicht verwendet werden, deaktivieren Sie diese Option für schnellere Builds.


sonarQubeRunAnalysis - Ausführen der SonarQube-Analyse
Eingabealias: sqAnalysisEnabled. boolean. Standardwert. false.

Führt nach dem Ausführen der aktuellen Ziele eine SonarQube-Analyse aus. install oder package Ziele sollten zuerst ausgeführt werden.


sonarQubeServiceEndpoint - SonarQube-Endpunkt
Eingabealias: sqConnectedServiceName. string. Erforderlich, wenn sqAnalysisEnabled = true.

Gibt den generischen Endpunkt des SonarQube-Servers an.


sonarQubeProjectName - SonarQube-Projektname
Eingabealias: sqProjectName. string. Optional. Verwenden Sie , wenn sqAnalysisEnabled = true.

Gibt den SonarQube-Projektnamen an, z. B sonar.projectName. .


sonarQubeProjectKey - SonarQube-Projektschlüssel
Eingabealias: sqProjectKey. string. Optional. Verwenden Sie , wenn sqAnalysisEnabled = true.

Gibt den eindeutigen SonarQube-Projektschlüssel an, z. B sonar.projectKey. .


sonarQubeProjectVersion - SonarQube-Projektversion
Eingabealias: sqProjectVersion. string. Optional. Verwenden Sie , wenn sqAnalysisEnabled = true.

Gibt die SonarQube-Projektversion an, z. B sonar.projectVersion. .


sonarQubeSpecifyDB - Die SonarQube-Serverversion ist niedriger als 5.2.
Eingabealias: sqDbDetailsRequired. boolean. Optional. Verwenden Sie , wenn sqAnalysisEnabled = true. Standardwert. false.

Wenn Sie einen SonarQube-Server 5.1 oder niedriger verwenden, müssen Sie die Datenbankverbindungsdetails angeben.


sonarQubeDBUrl - Db-Verbindungszeichenfolge
Eingabealias: sqDbUrl. string. Optional. Verwenden Sie , wenn sqDbDetailsRequired = true.

Verwenden Sie nur sonarQube Server 5.1 und niedriger.
Gibt die Datenbankverbindungseinstellung an (z. B. sonar.jdbc.url oder jdbc:jtds:sqlserver://localhost/sonar;SelectMethod=Cursor).


sonarQubeDBUsername - Db-Benutzername
Eingabealias: sqDbUsername. string. Optional. Verwenden Sie , wenn sqDbDetailsRequired = true.

Verwenden Sie nur sonarQube Server 5.1 und niedriger.
Gibt den Benutzernamen für den Datenbankbenutzer an (z. B. sonar.jdbc.username).


sonarQubeDBPassword - Db-Benutzerkennwort
Eingabealias: sqDbPassword. string. Optional. Verwenden Sie , wenn sqDbDetailsRequired = true.

Verwenden Sie nur sonarQube Server 5.1 und niedriger.
Gibt das Kennwort für den Datenbankbenutzer an (z. B. sonar.jdbc.password).


sonarQubeIncludeFullReport - Einschließen des vollständigen Analyseberichts in die Buildzusammenfassung (SQ 5.3 und höher)
Eingabealias: sqAnalysisIncludeFullReport. boolean. Optional. Verwenden Sie , wenn sqAnalysisEnabled = true. Standardwert. true.

Diese Option verzögert den Build, bis die SonarQube-Analyse abgeschlossen ist.


sonarQubeFailWhenQualityGateFails - Fail the build on quality gate failure (SQ 5.3+)
Eingabealias: sqAnalysisBreakBuildIfQualityGateFailed. boolean. Optional. Verwenden Sie , wenn sqAnalysisEnabled = true.

Diese Option ist nur verfügbar, wenn Sie einen SonarQube-Server 5.3 oder höher verwenden. Führt Verzögerungen ein, da der Build warten muss, bis SonarQube die Analyse abgeschlossen hat. Weitere Informationen zu SonarQube-Qualitätsgates.


checkStyleRunAnalysis - Ausführen von Checkstyle
Eingabealias: checkstyleAnalysisEnabled. boolean. Standardwert. false.

Führt das Checkstyle-Tool mit den Standardmäßigen Sun-Überprüfungen aus. Ergebnisse werden als Buildartefakte hochgeladen.


pmdRunAnalysis - Ausführen von PMD
Eingabealias: pmdAnalysisEnabled. boolean. Standardwert. false.

Verwendet das statische Analysetool PMD, um nach Fehlern im Code zu suchen. Ergebnisse werden als Buildartefakte hochgeladen.


findBugsRunAnalysis - Ausführen von FindBugs
Eingabealias: findbugsAnalysisEnabled. boolean. Standardwert. false.

Verwendet das statische Analysetool FindBugs, um nach Fehlern im Code zu suchen. Ergebnisse werden als Buildartefakte hochgeladen.


Aufgabensteuerungsoptionen

Alle Aufgaben verfügen zusätzlich zu den Aufgabeneingaben über Steuerungsoptionen. Weitere Informationen finden Sie unter Steuerungsoptionen und allgemeine Aufgabeneigenschaften.

Ausgabevariablen

Keine

Anforderungen

Anforderung BESCHREIBUNG
Pipelinetypen YAML, Klassischer Build, klassische Version
Wird ausgeführt auf Agent, DeploymentGroup
Forderungen Selbstgehostete Agents müssen über Funktionen verfügen, die den folgenden Anforderungen entsprechen , um Aufträge auszuführen, die diese Aufgabe verwenden: maven
Capabilities Diese Aufgabe erfüllt keine Anforderungen an nachfolgende Aufgaben im Auftrag.
Befehlseinschränkungen Any
Einstellbare Variablen Any
Agent-Version 1.89.0 oder höher
Aufgabenkategorie Entwickeln

Weitere Informationen