J'ai une installation TeamCity sur une machine Windows x32 Server2008. J'ai exécuté l'installation Web .net 4.5. J'ai également copié les fichiers de ma machine x64 sur la base de cet article afin de ne pas avoir besoin d'installer vs2012 (cependant, j'ai changé le chemin pour supprimer x86 sur la machine 32 bits):
MSBuild dans la solution TeamCity de Visual Studio 2012
Je n'arrive pas à convaincre l'agent local d'exécuter la version que j'ai configurée pour msbuild sur un projet vs2012 ou vs2010. Je continue de recevoir:
Exigences non satisfaites: MSBuildTools12.0_x86_Path existe
J'ai redémarré le serveur plusieurs fois et également redémarré l'agent. J'ai essayé de jouer un peu avec les variables de chemin, mais je ne peux pas comprendre ce que je manque. J'ai également regardé dans les paramètres de configuration et je peux les voir:
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
Comment puis-je obtenir 12,0 là-dedans?
la source
Réponses:
J'avais besoin d'installer MSBuild séparément, puis après le redémarrage de l'agent, la variable était là.
(De l'article MSDN) MSBuild est maintenant installé dans le cadre de Visual Studio plutôt que dans le cadre du .NET Framework. Le numéro de version actuel de MSBuild est 12.0. Si vous souhaitez installer MSBuild séparément, téléchargez le package d'installation à partir de MSBuild Download.
edit: le lien de réponse a été rompu. Voici le lien pour Microsoft Build Tools 2015 (le plus récemment jusqu'à aujourd'hui): https://www.microsoft.com/en-us/download/details.aspx?id=48159
la source
Réponse un peu tardive, mais si votre projet provient de VS 2012 et que vous utilisez l'étape de création de fichier de solution détectée automatiquement, la modification de cette étape et la sélection de «Microsoft Visual Studio 2012» dans la liste déroulante «Visual Studio» résout ce problème ainsi (et, à mon humble avis, plus correctement).
la source
J'ai eu le même problème et à la fin, il s'est avéré que mon étape de construction définie pour exécuter MSBuild était mal configurée.
Dans mon étape de construction MSBuild, le paramètre "MSBuild ToolsVersion" a été défini sur 12.0 (par défaut), ce qui conduit à l'erreur "Exigences non satisfaites: MSBuildTools12.0_x86_Path existe" sur mon système. Étant donné que je n'ai pas besoin du nouveau MSBuild 12.0 pour exécuter ma génération, j'ai modifié ce paramètre en 4.0 dans mon étape de génération. Cette version MSBuild est correctement installée sur mon système. Cela a résolu le problème pour moi.
la source
Je suis également un peu en retard à la fête, mais j'ai pensé partager ce qui suit au cas où cela aiderait une pauvre âme.
la source
MSBuild fait désormais partie de Visual Studio. Si vous devez installer les outils de build sur votre agent mais que vous ne souhaitez pas installer VS, vous devrez installer les nouveaux outils de build Microsoft qui sont disponibles à l' adresse http://www.microsoft.com/en-us/download/ details.aspx? id = 40760 .
la source
Dans mon cas, seule une installation séparée de MSBuild pour VS2013 a aidé. (voici le lien - https://www.microsoft.com/en-us/download/confirmation.aspx?id=40760 ) Il a créé ce dossier L'
C:\Program Files (x86)\MSBuild\12.0
installation des outils MSBuild pour VS2015 a crééC:\Program Files (x86)\MSBuild\14.0
ce dossier, et TC ne voulait pas utilise le.la source
J'ai eu ce problème sur mon agent de build secondaire.
J'avais copié le dossier MSBuild du PC de l'agent de construction principal vers le PC de l'agent de construction secondaire (comme je l'ai fait avec certains fichiers Visual Studio comme décrit ici: MSBuild dans la solution TeamCity of Visual Studio 2012 ), plutôt que d'installer MSBuild.
Il semble cependant que les services de l'agent TeamCity vérifient le registre pour les entrées MSBuild au démarrage (il ne semble pas le faire avec les fichiers Visual Studio que je mentionne ci-dessus). Comme j'avais simplement copié les fichiers de l'autre PC, aucune entrée MSBuild pour la version 12.0 n'existait, donc TeamCity n'a pas découvert les fichiers MSBuild même s'ils étaient présents dans le dossier Program Files (x86) \ MSBuild.
Lorsque j'ai installé les outils Microsoft Build à partir du lien ci-dessus http://www.microsoft.com/en-us/download/details.aspx?id=40760 TeamCity a trouvé l'entrée v.12.0 dans le registre et l'agent a pu construire les mêmes projets que l'agent principal.
N'oubliez pas de redémarrer le service de l'agent TeamCity après avoir installé MS Build Tools.
la source
Dans mon cas, j'ai TeamCity Professional 2018.1 sur Windows 2016 Server. J'ai téléchargé les outils de génération pour Visual Studio 2017 à partir d'ici: https://visualstudio.microsoft.com/downloads/ et j'ai sélectionné toutes les options pour les outils de génération. Après l'installation, j'ai ajouté MSBuild à la variable d'environnement globale PATH. C: \ Program Files (x86) \ Microsoft Visual Studio \ 2017 \ BuildTools \ MSBuild \ 15.0 \ Bin dans mon cas.
la source
Dans mon cas, c'était une nouvelle machine sans studio visuel installé et je viens de restaurer Teamcity à partir d'une autre machine. J'ai donc installé Visual Studio 2013 et résolu le problème de l'agent teamcity.
la source
Comme indiqué ci-dessus, l'étape de génération détectée automatiquement est probablement la mauvaise version de Visual Studio. Modifiez-le à l'aide de la liste déroulante Visual Studio sous la section Étapes de construction sur la page des paramètres de configuration de construction :
la source
J'ai semblé résoudre ce problème en allant dans le registre et en supprimant toutes les entrées pour MSBuild qui n'étaient pas pour la version 12, puis j'ai redémarré l'agent.
Pour ce faire, allez dans Démarrer> Exécuter et tapez Regedit
Accédez ensuite à la clé:
HKEY_LOCAL_MACHINE> SOFTWARE> Microsoft> MSBuild
Supprimez toutes les versions à l'exception de 12.0.
Descendez au niveau suivant dans ToolsVersions et supprimez les versions non-12.0.
la source