Sdílet prostřednictvím


Maven@1 – úloha Maven v1

Tuto úlohu použijte k sestavení pomocí Apache Mavenu.

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.

Vstupy

mavenPOMFile - Soubor Maven POM
string. Povinná hodnota. Výchozí hodnota: pom.xml.

Určuje relativní cestu z kořenového adresáře úložiště k souboru Maven POM.


goals - Cíle
string. Výchozí hodnota: package.


options - Možnosti
string.


publishJUnitResults - Publikování do TFS/Team Services
boolean. Výchozí hodnota: true.

Určuje možnost publikovat výsledky testu JUnit vytvořené sestavením Maven do TFS/Team Services. Každý soubor Test Results Files výsledků testu bude publikován jako testovací běh v TFS/Team Services.


testResultsFiles - Soubory výsledků testu
string. Vyžaduje se, když publishJUnitResults = true. Výchozí hodnota: **/TEST-*.xml.

Určuje cestu a vzor souborů výsledků testů, které se mají publikovat. Například **/TEST-*.xml pro všechny soubory XML s názvem, který začíná na TEST-. Pokud není zadána žádná kořenová cesta, soubory se shodují pod výchozím pracovním adresářem, jehož hodnota je k dispozici v proměnné $(System.DefaultWorkingDirectory). Například hodnota **/TEST-*.xml bude mít ve skutečnosti za následek odpovídající soubory z $(System.DefaultWorkingDirectory)/**/TEST-*.xml.


testRunTitle - Název testovacího běhu
string. Nepovinný parametr. Použijte, když publishJUnitResults = true.

Určuje název testovacího běhu.


codeCoverageToolOption - Nástroj Pokrytí kódu
Alias vstupu: codeCoverageTool. string. Povolené hodnoty: None, Cobertura, JaCoCo. Výchozí hodnota: None.

Určuje nástroj pokrytí kódu.


codeCoverageClassFilter - Filtry zahrnutí a vyloučení tříd
Alias vstupu: classFilter. string. Nepovinný parametr. Použijte, když codeCoverageTool != None.

Určuje seznam filtrů oddělených čárkami pro zahrnutí nebo vyloučení tříd ze shromažďování pokrytí kódu. Například, +:com.*,+:org.*,-:my.app*.*.


codeCoverageClassFilesDirectories - Adresáře souborů tříd
Alias vstupu: classFilesDirectories. string. Nepovinný parametr. Použijte, když codeCoverageTool = JaCoCo.

Toto pole je vyžadováno pro projekt s více moduly.
Určuje čárkami oddělený seznam relativních cest ze souboru POM Mavenu k adresářům obsahujícím soubory tříd a archivní soubory (JAR, WAR atd.). Pokrytí kódu se hlásí pro soubory tříd v těchto adresářích. Například, target/classes,target/testClasses.


codeCoverageSourceDirectories - Adresáře zdrojových souborů
Alias vstupu: srcDirectories. string. Nepovinný parametr. Použijte, když codeCoverageTool = JaCoCo.

Toto pole je vyžadováno pro projekt s více moduly.
Určuje čárkami oddělený seznam relativních cest ze souboru POM Mavenu k adresářům zdrojového kódu. Sestavy pokrytí kódu je používají ke zvýraznění zdrojového kódu. Například, src/java,src/Test.


codeCoverageFailIfEmpty - Selhání, když chybí výsledky pokrytí kódu
Alias vstupu: failIfCoverageEmpty. boolean. Nepovinný parametr. Použijte, když codeCoverageTool != None. Výchozí hodnota: false.

Sestavení selže, pokud pokrytí kódu nepřivedlo žádné výsledky k publikování.


javaHomeOption - Nastavit JAVA_HOME
Alias vstupu: javaHomeSelection. string. Povinná hodnota. Povolené hodnoty: JDKVersion (verze sady JDK), Path. Výchozí hodnota: JDKVersion.

Nastaví JAVA_HOME buď výběrem verze sady JDK, která se zjistí během sestavování, nebo ručním zadáním cesty k JDK.


jdkVersionOption - Verze sady JDK
Alias vstupu: jdkVersion. string. Nepovinný parametr. Použijte, když javaHomeSelection = JDKVersion. Povolené hodnoty: default, 1.9 (JDK 9), 1.8 (JDK 8), 1.7 (JDK 7), 1.6 (JDK 6). Výchozí hodnota: default.

Pokusí se zjistit cestu k vybrané verzi sady JDK a nastaví odpovídající nastavení JAVA_HOME .


jdkDirectory - Cesta sady JDK
Alias vstupu: jdkUserInputPath. string. Vyžaduje se, když javaHomeSelection = Path.

Nastaví JAVA_HOME na danou cestu.


jdkArchitectureOption - Architektura sady JDK
Alias vstupu: jdkArchitecture. string. Nepovinný parametr. Použijte, když jdkVersion != default. Povolené hodnoty: x86, x64. Výchozí hodnota: x64.

Poskytuje architekturu (x86, x64) sady JDK.


mavenVersionOption - Verze Mavenu
Alias vstupu: mavenVersionSelection. string. Povinná hodnota. Povolené hodnoty: Default, Path (Vlastní cesta). Výchozí hodnota: Default.

Použije buď výchozí verzi Mavenu, nebo verzi v zadané vlastní cestě.


mavenDirectory - Cesta Maven
Alias vstupu: mavenPath. string. Vyžaduje se, když mavenVersionSelection = Path.

Poskytuje vlastní cestu k instalaci Mavenu (například: /usr/share/maven).


mavenSetM2Home - Nastavení proměnné M2_HOME
boolean. Nepovinný parametr. Použijte, když mavenVersionSelection = Path. Výchozí hodnota: false.

Nastaví proměnnou M2_HOME na vlastní instalační cestu Mavenu.


mavenOptions - Nastavte MAVEN_OPTS na
Alias vstupu: mavenOpts. string. Výchozí hodnota: -Xmx1024m.

Nastaví proměnnou MAVEN_OPTS prostředí, která se používá k odesílání argumentů příkazového řádku ke spuštění prostředí JVM. Příznak -Xmx určuje maximální paměť dostupnou pro prostředí JVM.


mavenAuthenticateFeed - Ověřování integrovaných informačních kanálů Maven
Alias vstupu: mavenFeedAuthenticate. boolean. Výchozí hodnota: true.

Automaticky se ověřuje pomocí informačních kanálů Azure Artifacts. Pokud se informační kanály artefaktů nepoužívají, zrušte výběr této možnosti pro rychlejší sestavení.


sonarQubeRunAnalysis - Spuštění analýzy SonarQube
Alias vstupu: sqAnalysisEnabled. boolean. Výchozí hodnota: false.

Spustí analýzu SonarQube po provedení aktuálních cílů. install nebo package cíle by měly být provedeny jako první.


sonarQubeServiceEndpoint - Koncový bod SonarQube
Alias vstupu: sqConnectedServiceName. string. Vyžaduje se, když sqAnalysisEnabled = true.

Určuje obecný koncový bod serveru SonarQube.


sonarQubeProjectName - Název projektu SonarQube
Alias vstupu: sqProjectName. string. Nepovinný parametr. Použijte, když sqAnalysisEnabled = true.

Určuje název projektu SonarQube, například sonar.projectName.


sonarQubeProjectKey - Klíč projektu SonarQube
Alias vstupu: sqProjectKey. string. Nepovinný parametr. Použijte, když sqAnalysisEnabled = true.

Určuje jedinečný klíč projektu SonarQube, například sonar.projectKey.


sonarQubeProjectVersion - Verze projektu SonarQube
Alias vstupu: sqProjectVersion. string. Nepovinný parametr. Použijte, když sqAnalysisEnabled = true.

Určuje verzi projektu SonarQube, například sonar.projectVersion.


sonarQubeSpecifyDB - Verze serveru SonarQube je nižší než 5.2.
Alias vstupu: sqDbDetailsRequired. boolean. Nepovinný parametr. Použijte, když sqAnalysisEnabled = true. Výchozí hodnota: false.

Pokud používáte server SonarQube verze 5.1 nebo nižší, musíte zadat podrobnosti o připojení k databázi.


sonarQubeDBUrl - Připojovací řetězec databáze
Alias vstupu: sqDbUrl. string. Nepovinný parametr. Použijte, když sqDbDetailsRequired = true.

Použijte pouze pro server SonarQube verze 5.1 a nižší.
Určuje nastavení připojení k databázi (například sonar.jdbc.url nebo jdbc:jtds:sqlserver://localhost/sonar;SelectMethod=Cursor).


sonarQubeDBUsername - Uživatelské jméno databáze
Alias vstupu: sqDbUsername. string. Nepovinný parametr. Použijte, když sqDbDetailsRequired = true.

Použijte pouze pro server SonarQube verze 5.1 a nižší.
Určuje uživatelské jméno pro uživatele databáze (například sonar.jdbc.username).


sonarQubeDBPassword - Heslo uživatele databáze
Alias vstupu: sqDbPassword. string. Nepovinný parametr. Použijte, když sqDbDetailsRequired = true.

Použijte pouze pro server SonarQube verze 5.1 a nižší.
Určuje heslo pro uživatele databáze (například sonar.jdbc.password).


sonarQubeIncludeFullReport - Zahrnout úplnou sestavu analýzy do souhrnu sestavení (SQ 5.3+)
Alias vstupu: sqAnalysisIncludeFullReport. boolean. Nepovinný parametr. Použijte, když sqAnalysisEnabled = true. Výchozí hodnota: true.

Tato možnost zpozdí sestavení, dokud se nedokončí analýza SonarQube.


sonarQubeFailWhenQualityGateFails - Selhání sestavení při selhání brány kvality (SQ 5.3+)
Alias vstupu: sqAnalysisBreakBuildIfQualityGateFailed. boolean. Nepovinný parametr. Použijte, když sqAnalysisEnabled = true.

Tato možnost je dostupná jenom při použití serveru SonarQube verze 5.3 nebo vyšší. Zavádí zpoždění, protože sestavení musí počkat, než SonarQube dokončí analýzu. Další informace o bránách kvality SonarQube.


checkStyleRunAnalysis - Kontrolní styl běhu
Alias vstupu: checkstyleAnalysisEnabled. boolean. Výchozí hodnota: false.

Spustí nástroj Checkstyle s výchozími kontrolami Sun. Výsledky se nahrají jako artefakty sestavení.


pmdRunAnalysis - Spuštění PMD
Alias vstupu: pmdAnalysisEnabled. boolean. Výchozí hodnota: false.

Pomocí nástroje pro statickou analýzu PMD vyhledá chyby v kódu. Výsledky se nahrají jako artefakty sestavení.


findBugsRunAnalysis - Spuštění FindBugs
Alias vstupu: findbugsAnalysisEnabled. boolean. Výchozí hodnota: false.

Pomocí nástroje pro statickou analýzu FindBugs vyhledá chyby v kódu. Výsledky se nahrají jako artefakty sestavení.


Možnosti řízení úkolů

Všechny úkoly mají kromě vstupů úkolů i možnosti řízení. Další informace najdete v tématu Možnosti ovládacích prvků a běžné vlastnosti úlohy.

Výstupní proměnné

Žádné

Požadavky

Požadavek Popis
Typy kanálů YAML, klasický build, klasická verze
Běží na Agent, DeploymentGroup
Požadavky Agenti v místním prostředí musí mít funkce , které odpovídají následujícím požadavkům na spouštění úloh, které používají tuto úlohu: maven
Možnosti Tento úkol nesplňuje žádné požadavky na následné úkoly v úloze.
Omezení příkazů Všechny
Nastavitelné proměnné Všechny
Verze agenta 1.89.0 nebo vyšší
Kategorie úloh Sestavení

Viz také