Como posso instalar a versão VS2017 do msbuild em um servidor de compilação sem instalar o IDE?


204

Historicamente, isso foi feito com as Ferramentas de Compilação da Microsoft . Mas parece que as Ferramentas de Compilação podem não estar disponíveis para versões posteriores a 2015 . A substituição parece ser as ferramentas de criação do Visual Studio, que ainda não parecem ter uma página inicial real.

Fiz o download do instalador do VS2017 Professional e fui para a guia Componentes individuais . Imediatamente, o resumo está me dizendo que o editor principal do Visual Studio está lá, ocupando 753 MB. Eu não quero o editor. Apenas msbuild. Não há como desmarcar o editor.

Existe uma maneira de instalar a versão mais recente do msbuild sem também instalar o Visual Studio IDE?


Possível duplicata da tarefa de compilação
Richard

13
Essa pergunta é formulada com um título ruim que oculta a pergunta real. Não apareceu em uma pesquisa. Sua resposta é um link e execução, o que é ruim. O número de visualizações é baixo e é "mais novo" do que este, de uma maneira que não importa daqui a um dia, e muito menos no próximo ano. Então, com certeza, é uma "duplicata" no pior sentido possível.
rianjs

1
Discordo da sugestão de uma duplicata. Encontrei estas perguntas e respostas SO como o principal resultado da minha pesquisa por: "como instalar o msbuild 2017 no servidor de compilação" - e a resposta principal atende precisamente às minhas necessidades. Depois de ler a duplicata sugerida, essa resposta é um nível completo e mais detalhado sobre os problemas que se deslocam de uma versão para outra - que a postagem do SO não responde à pergunta que eu procurei.
Qxotk

Respostas:


309

As ferramentas de criação do Visual Studio são um download diferente do IDE. Eles parecem ser um subconjunto bem pequeno e são chamados de Build Tools for Visual Studio 2019 ( download ).

Você pode usar a GUI para fazer a instalação ou criar um script para a instalação do msbuild:

vs_buildtools.exe --add Microsoft.VisualStudio.Workload.MSBuildTools --quiet

Microsoft.VisualStudio.Workload.MSBuildTools é um ID de "invólucro" para os três subcomponentes necessários :

  • Microsoft.Component.MSBuild
  • Microsoft.VisualStudio.Component.CoreBuildTools
  • Microsoft.VisualStudio.Component.Roslyn.Compiler

Você pode encontrar documentação sobre os outros switches CLI disponíveis aqui .

A instalação das ferramentas de construção é muito mais rápida que o IDE completo. No meu teste, levou de 5 a 10 segundos. Com, --quietnão há indicador de progresso além de uma breve mudança de cursor. Se a instalação foi bem-sucedida, você poderá ver as ferramentas de construção %programfiles(x86)%\Microsoft Visual Studio\2019\BuildTools\MSBuild\Current\Bin.

Se você não os encontrar lá, tente executar sem --quietver as mensagens de erro que podem ocorrer durante a instalação.


1
O diretório acima mencionado definitivamente não foi criado. Eu removi o --quietsinalizador com resultado idêntico, exceto por uma janela modal aparecendo um pouco antes de desaparecer.
Itamaram 15/03

1
Eu daria uma olhada no Windows Event Viewer para ver se há alguma mensagem de log sobre por que a instalação falhou. E corrija-os ou faça uma nova pergunta específica para o seu problema.
rianjs

6
Além disso, não use o --quietmodo se estiver criando aplicativos da Web ASP.net no servidor de compilação - pois você deseja selecionar "Ferramentas de compilação de desenvolvimento da Web" durante o assistente de instalação para que os destinos corretos do MSBuild sejam instalados.
cwills

34
Parece que, em vez de ferramentas de construção, o link se refere à comunidade vs. Aqui está o link do buildtools: aka.ms/vs/15/release/vs_buildtools.exe
lorond

2
@IamCP: para copiar o ambiente de instalação do VS2017 em uma máquina local: cd G: \ ISO; . \ vs_Professional.exe - layout G: \ ISO \ VS2017ProOffline --lang pt-BR; . \ vs_BuildTools.exe --layout G: \ ISO \ VS2017BuildToolsOffline --lang pt-BR; Em seguida, você pode copiar para o seu destino offline.
Michel de Becdelièvre
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.