Saya memiliki TeamCity menginstal pada mesin windows x32 Server2008. Saya telah menjalankan instalasi web .net 4.5. Saya juga menyalin file dari mesin x64 saya berdasarkan artikel ini sehingga saya tidak perlu menginstal vs2012 (meskipun, saya memang memiliki perubahan jalur untuk menghapus x86 pada mesin 32bit):
MSBuild dalam solusi TeamCity dari Visual Studio 2012
Sepertinya saya tidak bisa mendapatkan agen lokal untuk menjalankan build yang telah saya siapkan untuk msbuild pada proyek vs2012 atau vs2010. Saya terus mendapatkan:
Persyaratan yang belum terpenuhi: MSBuildTools12.0_x86_Path ada
Saya telah merestart server beberapa kali, dan juga merestart agen. Saya sudah mencoba mengotak-atik variabel jalur sedikit, tetapi tidak dapat menemukan apa yang saya lewatkan. Saya telah melihat juga di Parameter Konfigurasi, dan dapat melihat ini:
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
Bagaimana cara mendapatkan 12.0 di sana?
sumber
Jawaban:
Saya perlu menginstal MSBuild secara terpisah, kemudian setelah agen restart, variabel itu ada.
(Dari artikel MSDN) MSBuild sekarang diinstal sebagai bagian dari Visual Studio daripada sebagai bagian dari .NET Framework. Nomor versi MSBuild saat ini adalah 12.0. Jika Anda ingin menginstal MSBuild secara terpisah, unduh paket penginstalan dari Unduh MSBuild.
edit: link jawaban rusak. Berikut ini tautan untuk Microsoft Build Tools 2015 (terbaru hingga saat ini): https://www.microsoft.com/en-us/download/details.aspx?id=48159
sumber
Sedikit jawaban yang terlambat, tetapi jika proyek Anda berasal dari VS 2012, dan Anda menggunakan langkah pembuatan file solusi yang terdeteksi otomatis, mengedit langkah tersebut dan memilih "Microsoft Visual Studio 2012" dari drop-down "Visual Studio" memperbaiki masalah ini juga (dan, IMHO, lebih tepatnya).
sumber
Saya memiliki masalah yang sama dan pada akhirnya ternyata langkah build yang saya tentukan untuk menjalankan MSBuild salah dikonfigurasi.
Dalam langkah pembuatan MSBuild saya, pengaturan "MSBuild ToolsVersion" diatur ke 12.0 (default), yang menyebabkan kesalahan "Persyaratan yang tidak terpenuhi: MSBuildTools12.0_x86_Path ada" di sistem saya. Karena saya tidak memerlukan MSBuild 12.0 baru untuk menjalankan build saya, saya mengubah pengaturan ini menjadi 4.0 di langkah build saya. Versi MSBuild ini diinstal dengan benar di sistem saya. Ini memecahkan masalah saya.
sumber
Saya juga agak terlambat ke pesta tetapi saya pikir saya akan membagikan hal-hal berikut jika itu membantu jiwa yang malang di luar sana.
sumber
MSBuild sekarang menjadi bagian dari Visual Studio. Jika Anda perlu menginstal alat build di agen Anda tetapi tidak ingin menginstal VS, Anda perlu menginstal Microsoft Build Tools baru yang tersedia di http://www.microsoft.com/en-us/download/ details.aspx? id = 40760 .
sumber
Dalam kasus saya - hanya instalasi terpisah dari MSBuild untuk VS2013 yang membantu. (di sini adalah tautan - https://www.microsoft.com/en-us/download/confirmation.aspx?id=40760 ) Itu membuat folder ini
C:\Program Files (x86)\MSBuild\12.0
Instalasi alat MSBuild untuk VS2015 membuatC:\Program Files (x86)\MSBuild\14.0
folder ini, dan TC tidak mau Gunakan.sumber
Saya mengalami masalah ini di agen build sekunder saya.
Saya telah menyalin folder MSBuild dari pc agen build utama ke pc agen build sekunder (seperti yang saya lakukan dengan beberapa file Visual Studio seperti dijelaskan di sini: MSBuild dalam solusi TeamCity of Visual Studio 2012 ), daripada menginstal MSBuild.
Tampaknya, bagaimanapun, bahwa layanan agen TeamCity memeriksa registri untuk entri MSBuild ketika dijalankan (tampaknya tidak melakukan ini dengan file Visual Studio yang saya sebutkan di atas). Karena saya baru saja menyalin file dari komputer lain, tidak ada entri MSBuild untuk v. 12.0, jadi TeamCity tidak menemukan file MSBuild meskipun file tersebut ada di folder Program Files (x86) \ MSBuild.
Ketika saya menginstal Microsoft Build Tools dari tautan di atas http://www.microsoft.com/en-us/download/details.aspx?id=40760 TeamCity menemukan entri v. 12.0 di registri dan agen dapat membangun proyek yang sama dengan agen utama.
Ingatlah untuk memulai ulang layanan agen TeamCity setelah menginstal MS Build Tools.
sumber
Dalam kasus saya, saya memiliki TeamCity Professional 2018.1 di Windows 2016 Server. Saya mengunduh Build Tools untuk Visual Studio 2017 dari sini: https://visualstudio.microsoft.com/downloads/ dan memilih semua opsi untuk alat pembuatan. Setelah menginstal saya menambahkan MSBuild ke variabel lingkungan PATH global. C: \ Program Files (x86) \ Microsoft Visual Studio \ 2017 \ BuildTools \ MSBuild \ 15.0 \ Bin dalam kasus saya.
sumber
Dalam kasus saya, itu adalah mesin baru tanpa studio visual terpasang dan saya baru saja memulihkan Teamcity dari komputer lain. Jadi saya telah menginstal visual studio 2013 dan memecahkan masalah agen kota.
sumber
Seperti yang dinyatakan di atas, langkah pembuatan yang terdeteksi otomatis mungkin mengambil versi Visual Studio yang salah. Ubah menggunakan dropdown Visual Studio di bawah bagian Build Steps pada halaman pengaturan Konfigurasi Build :
sumber
Sepertinya saya menyelesaikan masalah ini dengan masuk ke registri dan menghapus semua entri untuk MSBuild yang bukan untuk versi 12, lalu memulai ulang agen.
Untuk melakukan itu, buka Start> Run dan ketik Regedit
Kemudian navigasikan ke kunci:
HKEY_LOCAL_MACHINE> PERANGKAT LUNAK> Microsoft> MSBuild
Hapus semua versi kecuali 12.0.
Turun ke tingkat berikutnya ke ToolsVersions dan hapus versi non-12.0 di sana.
sumber