Кому-нибудь удается собрать приложения .NET 4.0 на сервере CI без установки Visual Studio 2010 на сервере CI?
SDK для .NET 4.0 не существует. Установили .NET 4.0 на CI Server. Msbuild.exe работает с простыми проектами и дает следующее предупреждение:
(GetReferenceAssemblyPaths target) -> C: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Microsoft.Common.targets (847,9): предупреждение MSB3644: эталонные сборки для платформы «.NETFramework, Version = v4.0» не были найдены. Чтобы решить эту проблему, установите SDK или Targeting Pack для этой версии платформы или перенацелите свое приложение на версию платформы, для которой у вас установлен SDK или Targeting Pack. Обратите внимание, что сборки будут разрешены из глобального кэша сборок (GAC) и будут использоваться вместо ссылочных сборок. Поэтому ваша сборка может быть неправильно нацелена на предполагаемую платформу.
Ответы:
Вам больше не нужно устанавливать VS, вы можете установить «Microsoft Windows SDK для Windows 7 и .NET Framework 4» прямо сейчас.
http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=6b6c21d2-2006-4afa-9702-529fa782d63b
источник
SDK для .NET 4.5 доступен здесь . Установщик хорошо работает с прокси с базовой авторизацией. Поддерживаемые операционные системы: Windows 8, Windows Server 2012, Windows 7, Windows Server 2008 R2
PS Мой ответ больше похож на комментарий к ответу Джереми , но у меня недостаточно репутации, чтобы комментировать ответы.
источник
другая альтернатива: без установки Net 4.0 SDK или vs 2010
Скопируйте папку эталонных сборок со своего компьютера разработчика на сервер сборки (190 МБ).
используйте параметр msbuild -p: FrameworkPathOverride, чтобы указать ссылку на папку сборок
расположение эталонных сборок:
C: \ Program Files (x86) \ Reference Assemblies \ Microsoft \ Framework \ .NETFramework \ v4.0 или C: \ Program Files \ Reference Assemblies \ Microsoft \ Framework \ .NETFramework \ v4.0
нашел это из:
Предупреждения о эталонных сборках сервера сборки .NET 4.0 MSB3644
Если вы получаете эту ошибку: «Microsoft.WebApplication.targets не найден» - просто скопируйте цель с машины разработчика https://stackoverflow.com/a/5344246/423356
если mvc3 не установлен на сервере сборки; «добавить развертываемые сборки» в проект mvc http://haacked.com/archive/2011/05/25/bin-deploying-asp-net-mvc-3.aspx
Если у вас возникла ошибка при создании проекта MSTest без установленной SDK или Visual Studio; Об этом есть несколько сообщений в блоге, но решение для меня слишком сложное. Я использую NUnit вместо MSTest
источник
На этой странице перечислены пакеты SDK .NET для каждой версии Visual Studio. http://blogs.msdn.com/b/dotnet/p/dotnet_sdks.aspx
Для меньшей загрузки выберите «пакет разработчика» или «целевой пакет», а не полный Windows SDK.
источник