Задача AspNetMerge с использованием MSBuild 2015
Я перевожу проект в Visual Studio 2010, чтобы использовать новые инструменты 2015 и не знаю, как его решить.
Во время сборки через TeamCity на новом агенте сборки с установленной Visual Studio 2015 возникает следующая ошибка:
ошибка MSB4062: не удалось загрузить задачу "Microsoft.WebDeployment.Tasks.AspNetMerge" из сборки C:\Program Files (x86)\MSBuild\Microsoft\WebDeployment\v10.0\Microsoft.WebDeployment.Tasks.dll. Не удалось загрузить файл или сборку 'file:///C:\Program Files (x86)\MSBuild\Microsoft\WebDeployment\v10.0\Microsoft.WebDeployment.Tasks.dll' или одну из ее зависимостей. Система не может найти указанный файл. Убедитесь, что объявление правильное, что сборка и все ее зависимости доступны и что задача содержит открытый класс, реализующий Microsoft.Build.Framework.ITask.
Упомянутая сборка упоминается в файле.proj для сборки как задача:
<UsingTask TaskName="Microsoft.WebDeployment.Tasks.AspNetMerge" AssemblyFile="$(MSBuildExtensionsPath)\Microsoft\WebDeployment\v10.0\Microsoft.WebDeployment.Tasks.dll"/>
Теперь, учитывая номер версии в этих путях v10.0, я предполагаю, что он все еще ссылается на более старый инструмент. Проблема в том, что в новом инструменте Microsoft.WebDeployment.Tasks.dll больше не существует.
Может ли кто-нибудь сказать мне, на какую новую сборку я должен ссылаться в моем проекте MSBuild, чтобы выполнить шаг aspnet_merge в новых инструментах? Есть ли способ лучше?
Заранее спасибо!
2 ответа
В конце концов я получил эту работу, изменив сборку, используемую задачей AspNetMerge в файле.proj, следующим образом:
<UsingTask TaskName="AspNetMerge" AssemblyFile="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v14.0\Web\Microsoft.Web.Publishing.Tasks.dll"/>
Задача AspNetMerge теперь является частью Microsoft.Web.Publishing.Tasks.dll.
Microsoft.WebDeployment.targets и Microsoft.WebDeployment.Tasks.dll включены в пакет проектов веб-развертывания. Более подробная информация: вы можете обратиться к этой статье.
Для Visual Studio 2015 вам не нужно создавать проект веб-развертывания, вы можете создать профиль публикации и настроить прекомпиляцию.
- Щелкните правой кнопкой мыши свой веб-проект => Опубликовать
- Нажмите на кнопку "Создать", чтобы создать новый профиль публикации.
- В разделе настроек проверьте прекомпиляцию во время публикации и нажмите "Настроить", чтобы настроить ее