Dela via


VSBuild@1 – Visual Studio build v1-uppgift

Använd den här uppgiften för att skapa med MSBuild och ange egenskapen Visual Studio-version. Läs mer om att installera Visual Studio-avbildningar på Azure.

Tips

Använd NuGetAuthenticate@1 i din pipeline före den här uppgiften. Mer information finns i Varför misslyckas min bygg-pipeline och frågar efter autentisering med enkel Sign-On (SSO?).

Syntax

# Visual Studio build v1
# Build with MSBuild and set the Visual Studio version property.
- task: VSBuild@1
  inputs:
    solution: '**\*.sln' # string. Required. Solution. Default: **\*.sln.
    #vsVersion: 'latest' # 'latest' | '17.0' | '16.0' | '15.0' | '14.0' | '12.0' | '11.0'. Visual Studio Version. Default: latest.
    #msbuildArgs: # string. MSBuild Arguments. 
    #platform: # string. Platform. 
    #configuration: # string. Configuration. 
    #clean: false # boolean. Clean. Default: false.
  # Advanced
    #maximumCpuCount: false # boolean. Build in Parallel. Default: false.
    #restoreNugetPackages: false # boolean. Restore NuGet Packages. Default: false.
    #msbuildArchitecture: 'x86' # 'x86' | 'x64'. MSBuild Architecture. Default: x86.
    #logProjectEvents: true # boolean. Record Project Details. Default: true.
    #createLogFile: false # boolean. Create Log File. Default: false.
    #logFileVerbosity: 'normal' # 'quiet' | 'minimal' | 'normal' | 'detailed' | 'diagnostic'. Optional. Use when createLogFile = true. Log File Verbosity. Default: normal.
    #enableDefaultLogger: true # boolean. Enable Default Logger. Default: true.
    #customVersion: # string. Custom Version.
# Visual Studio build v1
# Build with MSBuild and set the Visual Studio version property.
- task: VSBuild@1
  inputs:
    solution: '**\*.sln' # string. Required. Solution. Default: **\*.sln.
    #vsVersion: 'latest' # 'latest' | '16.0' | '15.0' | '14.0' | '12.0' | '11.0'. Visual Studio Version. Default: latest.
    #msbuildArgs: # string. MSBuild Arguments. 
    #platform: # string. Platform. 
    #configuration: # string. Configuration. 
    #clean: false # boolean. Clean. Default: false.
  # Advanced
    #maximumCpuCount: false # boolean. Build in Parallel. Default: false.
    #restoreNugetPackages: false # boolean. Restore NuGet Packages. Default: false.
    #msbuildArchitecture: 'x86' # 'x86' | 'x64'. MSBuild Architecture. Default: x86.
    #logProjectEvents: true # boolean. Record Project Details. Default: true.
    #createLogFile: false # boolean. Create Log File. Default: false.
    #logFileVerbosity: 'normal' # 'quiet' | 'minimal' | 'normal' | 'detailed' | 'diagnostic'. Optional. Use when createLogFile = true. Log File Verbosity. Default: normal.

Ingångar

solution - Lösning
string. Obligatoriskt. Standardvärde: **\*.sln.

Anger lösningen för uppgiften som ska användas i byggprocessen.

Om du vill skapa en enda lösning klickar du på knappen ... och anger lösningen.

Om du vill skapa flera lösningar anger du sökvillkoren. Du kan använda jokertecken med en mapp (*) och rekursiva jokertecken (**). Till exempel söker **.sln efter alla .sln filer i alla underkataloger.

Kontrollera att de lösningar som du anger laddas ned av den här bygg-pipelinen. På fliken Lagringsplats:

  • Om du använder TFVC kontrollerar du att lösningen är underordnad någon av mappningarna på fliken Lagringsplats.
  • Om du använder Git kontrollerar du att projektet eller lösningen finns på din Git-lagringsplats och i en gren som du skapar.

Tips

  • Du kan också skapa MSBuild-projektfiler (.*proj).
  • Om du skapar en anpassad MSBuild-projektfil rekommenderar vi att du använder MSBuild-uppgiften i stället för Visual Studio Build-aktiviteten.

Information om skillnaderna mellan MSBuild och Visual Studio build finns i Visual Studio builds vs. MSBuild.exe builds.


vsVersion - Visual Studio-version
string. Tillåtna värden: latest, 17.0 (Visual Studio 2022), 16.0 (Visual Studio 2019), 15.0 (Visual Studio 2017), 14.0 (Visual Studio 2015), 12.0 (Visual Studio 2013), 11.0 (Visual Studio 2012). Standardvärde: latest.

Värdet för den här indatan måste matcha den version av Visual Studio som används för att skapa din lösning.

Lägger till argumentet /p:VisualStudioVersion={numeric_visual_studio_version} i MSBuild-kommandot som körs av bygget. Om du till exempel anger Visual Studio 2015läggs /p:VisualStudioVersion=14.0 till i MSBuild-kommandot.

Azure Pipelines: Om ditt team vill använda Visual Studio med Microsoft-värdbaserade agenter väljer du windows senaste som standardversionspool. Se Microsoft-värdbaserade agenter.


vsVersion - Visual Studio-version
string. Tillåtna värden: latest, 16.0 (Visual Studio 2019), 15.0 (Visual Studio 2017), 14.0 (Visual Studio 2015), 12.0 (Visual Studio 2013), 11.0 (Visual Studio 2012). Standardvärde: latest.

Värdet för den här indatan måste matcha den version av Visual Studio som används för att skapa din lösning.

Lägger till argumentet /p:VisualStudioVersion={numeric_visual_studio_version} i MSBuild-kommandot som körs av bygget. Om du till exempel anger Visual Studio 2015läggs /p:VisualStudioVersion=14.0 till i MSBuild-kommandot.

Azure Pipelines: Om ditt team vill använda Visual Studio med Microsoft-värdbaserade agenter väljer du windows senaste som standardversionspool. Se Microsoft-värdbaserade agenter.


msbuildArgs - MSBuild-argument
string.

Skickar ytterligare argument till MSBuild. Syntax finns i MSBuild Command-Line Reference.


platform - Plattform
string.

Anger vilken plattform du vill skapa, till exempel Win32, x86, x64eller any cpu.

Tips

  • Om du riktar in dig på en MSBuild-projektfil (.*proj) i stället för en lösning anger du AnyCPU (inget blanksteg).
  • Deklarera en byggvariabel, till exempel BuildPlatform på fliken Variabler (välj Tillåt vid kötid) och referera till den här som $(BuildPlatform). På så sätt kan du ändra plattformen när du köar bygget och gör det möjligt att skapa flera konfigurationer.

configuration - Konfiguration
string.

Anger den konfiguration som du vill skapa, till exempel debug eller release.

Tips

Deklarera en byggvariabel, till exempel BuildConfiguration på fliken Variabler (välj Tillåt vid kötid) och referera till den här som $(BuildConfiguration). På så sätt kan du ändra plattformen när du köar bygget och gör det möjligt att skapa flera konfigurationer.


clean - Rensa
boolean. Standardvärde: false.

Om den är inställd på falsegör uppgiften en inkrementell version. Den här inställningen kan minska byggtiden, särskilt om din kodbas är stor. Det här alternativet har ingen praktisk effekt om du inte också anger clean-lagringsplatsen till false.

Om den är inställd på trueåterskapar uppgiften all kod i kodprojekten. Detta motsvarar argumentet MSBuild /target:clean.


maximumCpuCount - Skapa parallellt
boolean. Standardvärde: false.

Valfritt. Om din MSBuild-målkonfiguration är kompatibel med att bygga parallellt kan du kontrollera indata för att skicka /m växla till MSBuild (endast Windows). Om målkonfigurationen inte är kompatibel med att bygga parallellt kan kontrollen av det här alternativet leda till att bygget resulterar i fel vid användning av filer eller tillfälliga eller inkonsekventa byggfel.


restoreNugetPackages - Återställ NuGet-paket
boolean. Standardvärde: false.

Indata är inaktuella. Om du vill återställa NuGet-paket lägger du till en NuGet Tool Installer- uppgift före bygget.


msbuildArchitecture - MSBuild-arkitektur
string. Tillåtna värden: x86 (MSBuild x86), x64 (MSBuild x64). Standardvärde: x86.

Valfritt. Tillhandahåller arkitekturen (x86 eller x64) för MSBuild som ska köras.

Tips

Eftersom Visual Studio körs som ett 32-bitarsprogram kan det uppstå problem när bygget bearbetas av en byggagent som kör 64-bitarsversionen av Team Foundation Build Service. Genom att välja MSBuild x86kan du lösa dessa problem.


logProjectEvents - registrera projektinformation
boolean. Standardvärde: true.

Valfritt. Registrerar tidslinjeinformation för varje projekt.


createLogFile - Skapa loggfil
boolean. Standardvärde: false.

Valfritt. Skapar en loggfil (endast Windows).


logFileVerbosity - utförlig loggfil
string. Valfritt. Använd när createLogFile = true. Tillåtna värden: quiet, minimal, normal, detailed, diagnostic. Standardvärde: normal.

Anger verbositetsnivån i loggfiler.


enableDefaultLogger - Aktivera standardloggning
boolean. Standardvärde: true.

Om värdet är inställt på trueaktiverar du standardloggaren för MSBuild.


customVersion - anpassad version
string.

Anger en anpassad version av Visual Studio. Exempel: 15.0, 16.0, 17.0. Den version av Visual Studio som krävs måste vara installerad i systemet.

Azure Pipelines: Om ditt team vill använda Visual Studio 2022 med Microsoft-värdbaserade agenter väljer du windows-2022 som standardversionspool. Mer information finns i Microsoft-värdbaserade agenter.


Kontrollalternativ för aktivitet

Alla aktiviteter har kontrollalternativ utöver sina aktivitetsindata. Mer information finns i Kontrollalternativ och vanliga uppgiftsegenskaper.

Utdatavariabler

Ingen.

Anmärkningar

Varför misslyckas min bygg-pipeline och jag uppmanas att använda autentisering med enkel Sign-On (SSO)?

Byggen kan misslyckas om autentiseringsuppgifterna har upphört att gälla. För att undvika dessa fel rekommenderar vi att du använder NuGet Authenticate-uppgiften för att installera om providern för autentiseringsuppgifter och automatiskt uppdatera autentiseringsuppgifterna. Detta säkerställer oavbruten åtkomst under pipelinekörningen.

steps:
# Authenticate with NuGet to ensure credentials are refreshed
- task: NuGetAuthenticate@1 
# Build the solution using VSBuild
- task: VSBuild@1
  inputs:
    solution: '**/*.sln' 

Läs mer om att installera Visual Studio-avbildningar på Azure.

Viktigt!

Den här uppgiften stöds endast på agenter som kör Windows.

Krav

Krav Beskrivning
Pipelinetyper YAML, klassisk version
Körs på Agent, DeploymentGroup
kräver Lokalt installerade agenter måste ha funktioner som matchar följande kräver för att köra jobb som använder den här uppgiften: msbuild, visualstudio
funktioner Den här aktiviteten uppfyller inte några krav på efterföljande uppgifter i jobbet.
Kommandobegränsningar Vilken som helst
variabler som kan Vilken som helst
Agentversion 1.95.0 eller senare
Aktivitetskategori Skapa