Exigences en matière de villes non remplies: MSBuildTools12.0_x86_Path existe

J’ai une installation de TeamCity sur la machine Windows x32 Server2008. J’ai lancé 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 à installer vs2012 (cependant, j’ai eu le changement de chemin pour supprimer x86 sur la machine 32 bits):

MSBuild dans la solution TeamCity de Visual Studio 2012

Je n’arrive pas à faire en sorte que l’agent local exécute le build que j’ai configuré pour msbuild sur un projet vs2012 ou vs2010. Je continue à recevoir:

Exigences non satisfaites: MSBuildTools12.0_x86_Path existe

J’ai redémarré le serveur plusieurs fois et redémarré l’agent également. J’ai essayé de jouer un peu avec les variables du chemin, mais je n’arrive pas à comprendre ce qui me manque. J’ai regardé aussi dans les parameters de configuration, et peut voir ceux-ci:

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?

J’avais besoin d’installer MSBuild séparément, puis après avoir redémarré l’agent, la variable était présente.

(À partir d’un 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 (plus récemment jusqu’à aujourd’hui): https://www.microsoft.com/en-us/download/details.aspx?id=48159

Une réponse un peu tardive, mais si votre projet provient de VS 2012 et que vous utilisez l’étape de génération de fichier de solution détectée automatiquement, la modification de cette étape et le choix de “Microsoft Visual Studio 2012” dans le menu déroulant “Visual Studio” résout ce problème. ainsi (et, à mon humble avis, plus correctement).

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 génération MSBuild, le paramètre “MSBuild ToolsVersion” a été défini sur 12.0 (valeur par défaut), ce qui a entraîné l’erreur “Exigences non satisfaites: MSBuildTools12.0_x86_Path” 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 de MSBuild est correctement installée sur mon système. Cela a résolu le problème pour moi.

Je suis aussi un peu en retard à la fête, mais je pensais partager ce qui suit au cas où cela aiderait une pauvre âme.

  • J’ai reçu l’erreur mentionnée ci-dessus lors d’une nouvelle installation de TeamCity 8.1.4 sur une nouvelle boîte Windows Server 2012 R2
  • Suivez les instructions de ce sujet et l’erreur est toujours apparue malgré de nombreux redémarrages et réinstallations.
  • J’ai remarqué que les informations d’agent telles que le système d’exploitation et le processeur n’apparaissaient pas sur la page de détails de l’agent. Cela indiquait que le problème n’était pas lié aux prérequirejs .NET et MSBUILD, mais plutôt au fait que le service d’agent ne pouvait pas lire les informations sur la machine.
  • L’agent était exécuté sous le compte d’un utilisateur (avec toutes les permissions nécessaires conformément à la documentation de TeamCity ). Mais je pensais voir ce qui se passerait si je me dirigeais vers Outils d’administration> Services et modifiait le compte du système Se connecter au système local.
  • Redémarrage du service d’agent.
  • Grand succès.

MSBuild fait maintenant partie de Visual Studio. Si vous devez installer les outils de génération sur votre agent, mais que vous ne souhaitez pas installer VS, vous devez installer les nouveaux outils de création Microsoft, disponibles à l’ adresse http://www.microsoft.com/en-us/download/. details.aspx? id = 40760 .

Dans mon cas, seule l’installation séparée de MSBuild pour VS2013 m’a aidé. (voici le lien – https://www.microsoft.com/en-us/download/confirmation.aspx?id=40760 ) Il a créé ce dossier C:\Program Files (x86)\MSBuild\12.0 Installation des outils MSBuild pour VS2015 a créé ce dossier C:\Program Files (x86)\MSBuild\14.0 et TC ne voulait pas l’utiliser.

J’ai eu ce problème sur mon agent de construction secondaire.

J’avais copié le dossier MSBuild du PC de l’agent de génération principal vers le PC de l’agent de génération secondaire (comme certains fichiers Visual Studio décrits ici: MSBuild dans la solution TeamCity de Visual Studio 2012 ), plutôt que d’installer MSBuild.

Il semble toutefois que les services de l’agent TeamCity vérifient les entrées du registre MSBuild au démarrage (cela ne semble pas être le cas avec les fichiers Visual Studio mentionnés ci-dessus). Comme j’avais simplement copié les fichiers de l’autre ordinateur, 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 de création Microsoft à 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 que 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.

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

Ensuite, accédez à la clé:

HKEY_LOCAL_MACHINE> LOGICIELS> Microsoft> MSBuild

Supprimer toutes les versions sauf 12.0.

Descendez au niveau suivant dans ToolsVersions et supprimez les versions non-12.0.

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é le studio visuel 2013 et résolu le problème d’agent de teamcity.

Dans mon cas, j’ai TeamCity Professional 2018.1 sur Windows 2016 Server. J’ai téléchargé Build Tools for Visual Studio 2017 à partir d’ici: https://visualstudio.microsoft.com/downloads/ et sélectionné toutes les options pour les outils de génération. Après l’installation, j’ai ajouté MSBuild à la variable d’environnement PATH globale. C: \ Program Files (x86) \ Microsoft Visual Studio \ 2017 \ BuildTools \ MSBuild \ 15.0 \ Bin dans mon cas.