Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
MSBuild fornece uma superfície de API pública para que seu programa possa executar compilações e inspecionar projetos. Versões recentes das APIs do MSBuild podem ser encontradas nos seguintes pacotes NuGet:
| Nome do pacote | Descrição |
|---|---|
| Microsoft.Build | Contém o assembly Microsoft.Build que é usado para criar, editar e avaliar projetos MSBuild. |
| Microsoft.Build.Framework | Contém o assembly comum da estrutura MSBuild usado por outros assemblies MSBuild. |
| Microsoft.Build.Runtime | Fornece uma cópia executável completa do MSBuild. Consulte este pacote somente se seu aplicativo precisar carregar projetos ou executar compilações em processo sem exigir a instalação do MSBuild. A avaliação bem-sucedida de projetos usando este pacote requer a agregação de componentes adicionais (como os compiladores) em um diretório de aplicativos. |
| Microsoft.Build.Tasks.Core | Contém o assembly Microsoft.Build.Tasks que implementa as tarefas comumente usadas do MSBuild. |
| Microsoft.Build.Utilities.Core | Contém o assembly Microsoft.Build.Utilities que é usado para implementar tarefas personalizadas do MSBuild. |
Além disso, o NuGet também hospeda um assembly herdado, Microsoft.Build.Engine, que foi marcado como obsoleto.
Há várias versões diferentes da API do MSBuild e, para as versões 15 e 16, há duas formas distintas dos assemblies nos pacotes NuGet, uma compilada com o .NET Framework e outra compilada com o .NET Core, que é um subconjunto da superfície da API do .NET Framework. A versão .NET Core do MSBuild é utilizada quando se invoca o comando dotnet e ao usar o MSBuild em sistemas Mac e Linux.
A documentação para a API do MSBuild pode ser encontrada usando o .NET API Browser ou navegando pelos namespaces na lista a seguir.
| Espaço de nomes | Aplica-se a | Descrição |
|---|---|---|
| Microsoft.Build.Construction | Todos | Contém tipos que o modelo de objeto MSBuild usa para construir raízes de projeto com valores não avaliados. Cada raiz de projeto corresponde a um projeto ou arquivo de destinos. |
| Microsoft.Build.Definition | Todos | Contém a classe ProjectOptions, que suporta a construção do projeto. |
| Microsoft.Build.Evaluation | Todos | Contém tipos que o modelo de objeto MSBuild usa para avaliar projetos. Cada projeto está associado a uma ou mais raízes do projeto. |
| Microsoft.Build.Evaluation.Context | Todos | Contém a classe EvaluationContext, usada para armazenar o estado de avaliação durante chamadas. |
| Microsoft.Build.Exceptions | Todos | Contém tipos de exceção que podem ser lançados durante o processo de compilação. |
| Microsoft.Build.Execution | Todos | Contém tipos que o modelo de objeto MSBuild usa para criar projetos. |
| Microsoft.Build.Framework | Todos | Contém os tipos que definem como tarefas e registradores interagem com o mecanismo MSBuild. |
| Microsoft.Build.Framework.Profiler | Todos | Contém os tipos que oferecem suporte à criação de perfil de desempenho. |
| Microsoft.Build.Framework.XamlTypes | Somente .NET Framework | Contém classes usadas para representar tipos XAML analisados de arquivos, regras e outras fontes. |
| Microsoft.Build.Globbing | Todos | Contém classes que suportam processamento de curingas. |
| Microsoft.Build.Globbing.Extensions | Todos | Contém tipos que suportam extensões para o processamento de wildcards. |
| Microsoft.Build.Graph | Todos | Contém tipos que suportam a -graph opção MSBuild. |
| Microsoft.Build.Logging | Todos | Contém tipos usados para registrar o progresso de uma compilação. |
| Microsoft.Build.ObjectModelRemoting | Todos | Contém tipos que suportam remotização no MSBuild. |
| Microsoft.Build.Tasks | Todos | Contém a implementação de todas as tarefas enviadas com o MSBuild. |
| Microsoft.Build.Tasks.Deployment.Bootstrapper | Somente .NET Framework | Contém classes usadas internamente pelo MSBuild. |
| Microsoft.Build.Tasks.Deployment.ManifestUtilities | Somente .NET Framework | Contém classes que o MSBuild usa. |
| Microsoft.Build.Tasks.Hosting | Todos | Contém classes usadas internamente pelo MSBuild. |
| Microsoft.Build.Tasks.Xaml | Somente .NET Framework | Contém classes relacionadas a tarefas de compilação XAML. |
| Microsoft.Build.Utilities | Todos | Contém classes auxiliares que você pode usar para criar seus próprios registradores e tarefas do MSBuild. |
Na tabela anterior, "Tudo" na coluna "Aplica-se a" significa que os tipos no espaço de nomes estão disponíveis tanto nas versões do .NET Framework como do .NET Core da API do MSBuild.
Localizador MSBuild
MSBuild Locator é uma API que você pode usar para localizar o MSBuild em uma máquina. Você pode usá-lo no desenvolvimento de ferramentas de compilação, quando quiser encontrar versões instaladas do MSBuild.
O NuGetPackage está em Microsoft.Build.Locator e a documentação de referência está em Microsoft.
Para obter mais informações sobre MSBuildLocator, consulte Localizar e usar versões do MSBuild.