Ответ 1
Вам больше не нужно устанавливать VS, теперь вы можете установить "Microsoft Windows SDK для Windows 7 и .NET Framework 4".
Кто-нибудь может собрать компиляцию приложений .NET 4.0 на сервере CI без установки Visual Studio 2010 на сервере CI?
Нет SDK для .NET 4.0. Установили .NET 4.0 на CI-сервере. Msbuild.exe работает для простых проектов и дает следующее предупреждение:
(цель GetReferenceAssemblyPaths) → 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".
SDK для .NET 4.5 доступен здесь. Установщик хорошо работает с прокси с базовой авторизацией. Поддерживаемые операционные системы: Windows 8, Windows Server 2012, Windows 7, Windows Server 2008 R2
P.S. Мой ответ больше похож на комментарий Джереми, но у меня недостаточно репутации, чтобы прокомментировать ответы.
другая альтернатива: без установки 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
нашел это:
Предупреждения MSB3644 о сборке серверов сборки .NET 4.0
Если вы получите эту ошибку: "Microsoft.WebApplication.targets не найден" - просто скопируйте цель из dev machine fooobar.com/questions/19968/...
если mvc3 не установлен на сервере сборки; "добавить развертываемые сборки" в проект mvc http://haacked.com/archive/2011/05/25/bin-deploying-asp-net-mvc-3.aspx
Если у вас возникла ошибка при создании проекта MSTest без установки sdk или visual studio; Есть несколько сообщений в блоге об этом, плохое решение слишком сложно для меня. Я использую NUnit вместо MSTest
На этой странице перечислены .NET SDK для каждой версии Visual Studio. http://blogs.msdn.com/b/dotnet/p/dotnet_sdks.aspx
Для меньшей загрузки выберите "пакет разработчика" или "пакет таргетинга", а не полный пакет Windows SDK.