Прошло некоторое время с тех пор, как я установил Build Server, поэтому, возможно, я что-то забыл, или, может быть, .NET 4.5 отличается от той версии, с которой я делал это в прошлый раз, но вот моя проблема.
Я пытаюсь настроить сервер сборки для мониторинга репозитория системы управления версиями. Каждый раз, когда что-то меняется, я хочу, чтобы сервер извлекал изменения и строил проект. Если ошибок нет, я хочу развернуть сайт на веб-сайте, запущенном на сервере сборки.
Раньше, когда я делал это, я думал, что смогу сделать это, установив только .NET, но когда я пытаюсь собрать этот проект, я получаю сообщение об ошибке: «C: \ Program Files \ MSBuild \ Microsoft \ VisualStudio \ v11 .0 \ WebApplications \ Microsoft.WebApplication.targets "отсутствует, и если я пойду и посмотрю, то вижу, что он отсутствует. На самом деле целевых файлов Visual Studio 11 нет.
После долгих раздумий и головокружения я вышел и получил "Windows 8 / .NET 4.5 SDK", думая, что .NET 4.5 SDK может установить нужные мне целевые файлы, но этого не произошло, если я каким-то образом не установил его неправильно. .
Итак, что мне нужно поставить на Build Server, чтобы проект был собран. Я бы предпочел не устанавливать полную Visual Studio 2012.
Ответы:
Моя проблема была связана с установкой Windows Software Development Kit (SDK) для Windows 8 на Windows 2008 Box. Если вы прочтете эту страницу дальше, то найдете заголовок с надписью «Инструменты SDK .NET Framework 4.5 для Windows Vista и Windows Server 2008». Это говорит вам:
источник
Чтобы работать на вашем CI-сервере без Visual Studio, вам нужно всего лишь скопировать несколько папок с машины разработки в то же место на CI-сервере. SDK устанавливать не нужно.
VS 2015:
VS 2013:
VS 2012:
VS 2010:
.NET 4.6:
.NET 4.5.2:
.NET 4.5.1:
.NET 4.5:
.NET 4.0.1:
.NET 4.0:
Или, как предложил Мэтт , вы можете скопировать их в подкаталог своего проекта и изменить
<MSBuildExtensionsPath32>
расположение в файле MSBuild (обычно.csproj
или.vbproj
).Как только вы это сделаете, ваш проект будет скомпилирован.
Вы также должны явно установить переменную среды VisualStudioVersion для версии Visual Studio (10.0 для VS2010, 11.0 для VS2012, 12.0 для VS2013, 14.0 для VS2015), которую вы используете, просто чтобы убедиться, что она установлена прямо в вашей конфигурации.
источник
Из msdn :
Чтобы исправить это, мне пришлось скопировать папку
C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5
с моей машины разработки (на которой, кстати, есть Visual Studio 2012) на агенты сборки. После этой операции Team City больше не сообщала об ошибках, и mscorlib.dll не выводился в папку bin.источник
В этом случае поможет Microsoft Build Tools 2013 , как описано на странице загрузки:
источник
Мой отдел. любит минималистичный подход к тому, что установлено на наших машинах для сборки Win 7. Однако нам не нравится просто копировать и вставлять файлы / папки из-за потенциальных проблем с ключами реестра. Вместо установки VS 2013 я установил следующие гораздо более мелкие и бесплатные компоненты. Теперь команда разработчиков может успешно создавать веб-приложения VS 2013.
источник
Microsoft.WebApplication.targets
и никогда не знал об этой изолированной оболочке!Решаю эту проблему с помощью агентов Visual Studio.
Вы можете попробовать установить Visual Studio Agents 2012.
http://www.microsoft.com/en-us/download/details.aspx?id=38186
источник