Eu tenho um TeamCity instalado em uma máquina x32 Server2008 windows. Executei a instalação web do .net 4.5. Também copiei os arquivos da minha máquina x64 com base neste artigo, de modo que não precisei instalar o vs2012 (embora eu tenha alterado o caminho para remover o x86 na máquina de 32 bits):
MSBuild na solução TeamCity do Visual Studio 2012
Não consigo fazer com que o agente local execute a compilação que configurei para msbuild em um projeto vs2012 ou vs2010. Eu continuo recebendo:
Requisitos não atendidos: MSBuildTools12.0_x86_Path existe
Reiniciei o servidor várias vezes e reiniciei o agente também. Eu tentei mexer um pouco com as variáveis de caminho, mas não consigo descobrir o que estou perdendo. Também olhei nos Parâmetros de configuração e posso ver estes:
MSBuildTools2.0_x86_Path C: \ Windows \ Microsoft.NET \ Framework \ v2.0.50727
MSBuildTools3.5_x86_Path C: \ Windows \ Microsoft.NET \ Framework \ v3.5
MSBuildTools4.0_x86_Path C: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319
Como faço para colocar 12,0 lá?
fonte
Respostas:
Eu precisei instalar o MSBuild separadamente, depois de reiniciar o agente, a variável estava lá.
(Artigo do MSDN) O MSBuild agora é instalado como parte do Visual Studio, e não como parte do .NET Framework. O número da versão atual do MSBuild é 12.0. Se você deseja instalar o MSBuild separadamente, baixe o pacote de instalação em Download do MSBuild.
editar: o link de resposta foi quebrado. Aqui está o link para o Microsoft Build Tools 2015 (mais recentemente até hoje): https://www.microsoft.com/en-us/download/details.aspx?id=48159
fonte
Uma resposta um pouco tardia, mas se o seu projeto for do VS 2012 e você estiver usando a etapa de compilação do arquivo de solução autodetectada, editar essa etapa e escolher "Microsoft Visual Studio 2012" no menu suspenso "Visual Studio" corrige esse problema também (e, IMHO, mais corretamente).
fonte
Eu tive o mesmo problema e no final descobri que minha etapa de compilação definida para executar o MSBuild estava configurada incorretamente.
Na minha etapa de compilação do MSBuild, a configuração "MSBuild ToolsVersion" foi definida como 12.0 (padrão), o que levou ao erro "Requisitos não atendidos: MSBuildTools12.0_x86_Path existe" em meu sistema. Como não preciso do novo MSBuild 12.0 para executar minha compilação, alterei essa configuração para 4.0 na minha etapa de compilação. Esta versão do MSBuild está instalada corretamente no meu sistema. Isso resolveu o problema para mim.
fonte
Também estou um pouco atrasado para a festa, mas pensei em compartilhar o seguinte, caso isso ajude alguma pobre alma lá fora.
fonte
O MSBuild agora faz parte do Visual Studio. Se precisar instalar as ferramentas de compilação em seu agente, mas não quiser instalar o VS, você precisará instalar as novas ferramentas de compilação da Microsoft, que estão disponíveis em http://www.microsoft.com/en-us/download/ details.aspx? id = 40760 .
fonte
No meu caso - apenas a instalação separada do MSBuild para VS2013 ajudou. (aqui está o link - https://www.microsoft.com/en-us/download/confirmation.aspx?id=40760 ) Foi criada esta pasta
C:\Program Files (x86)\MSBuild\12.0
Instalação de ferramentas MSBuild para VS2015 criouC:\Program Files (x86)\MSBuild\14.0
esta pasta, e TC não queria use-o.fonte
Eu tive esse problema no meu agente de compilação secundário.
Copiei a pasta MSBuild do pc do agente de compilação principal para o pc do agente de compilação secundário (como fiz com alguns arquivos do Visual Studio conforme descrito aqui: MSBuild na solução TeamCity do Visual Studio 2012 ), em vez de instalar o MSBuild.
Parece, entretanto, que os serviços do agente TeamCity verificam o registro para entradas do MSBuild quando ele é inicializado (não parece fazer isso com os arquivos do Visual Studio que mencionei acima). Como eu simplesmente copiei os arquivos do outro pc, nenhuma entrada MSBuild para v. 12.0 existia, portanto, o TeamCity não descobriu os arquivos MSBuild, embora eles estivessem presentes na pasta Arquivos de programas (x86) \ MSBuild.
Quando instalei as ferramentas do Microsoft Build a partir do link acima http://www.microsoft.com/en-us/download/details.aspx?id=40760 TeamCity encontrei a entrada v. 12.0 no registro e o agente foi capaz de construir os mesmos projetos que o agente primário.
Lembre-se de reiniciar o serviço do agente TeamCity após instalar o MS Build Tools.
fonte
No meu caso, tenho TeamCity Professional 2018.1 no Windows 2016 Server. Baixei Build Tools for Visual Studio 2017 aqui: https://visualstudio.microsoft.com/downloads/ e selecionei todas as opções para ferramentas de build. Após a instalação, adicionei o MSBuild à variável de ambiente PATH global. C: \ Arquivos de programas (x86) \ Microsoft Visual Studio \ 2017 \ BuildTools \ MSBuild \ 15.0 \ Bin no meu caso.
fonte
No meu caso, era uma máquina nova sem visual studio instalado e acabei de restaurar o Teamcity de outra máquina. Então, instalei o visual studio 2013 e resolvi o problema do agente teamcity.
fonte
Como declarado acima, a etapa de compilação detectada automaticamente provavelmente foi obtida na versão errada do Visual Studio. Altere-o usando a lista suspensa do Visual Studio na seção Etapas da versão na página de configurações de configuração da versão:
fonte
Parece que resolvi esse problema acessando o registro e excluindo todas as entradas do MSBuild que não eram da versão 12 e reiniciei o agente.
Para fazer isso, vá em Iniciar> Executar e digite Regedit
Em seguida, navegue até a chave:
HKEY_LOCAL_MACHINE> SOFTWARE> Microsoft> MSBuild
Exclua todas as versões, exceto 12.0.
Vá para o próximo nível para ToolsVersions e exclua as versões não 12.0 lá.
fonte