#azure-devops
#azure-devops
Вопрос:
Мы пытались построить конвейер с использованием MS Hosted agent с VMImage (vs2017-win2016) для приложения .net, но ошибка build id приводит к следующим ошибкам..Есть идеи? Теперь тот же исходный код успешно создается на локальном сервере сборки, и поскольку мы теперь используем Azure Devops для создания конвейера сборки с использованием MS Hosted agent, его сбой.
Это единственная ошибка сборки, которую мы получаем прямо сейчас. Любые ценные комментарии или входные данные высоко ценятся.
Сведения об ошибке приведены ниже:
Решение для сборки анализа ошибок (VSBuild) — задача сборки VSBuild
C:Program Файлы (x86) Microsoft Visual Studio 2017 Enterprise MSBuild 15.0Bin Microsoft.Common.CurrentVersion.targets(5165,5): Ошибка MSB3073: команда «копировать»D:a1sModulesHP.AMI.Modules .VirtualHeadEndResponseTemplates*.xml» C:AMITemplates » завершено с кодом 1.
Комментарии:
1. Это настроенный вами сценарий после сборки?
2. Привет, Мэтт, я не настроил ни одного сценария после сборки. Я использую классический редактор для создания конвейера сборки. Я использовал только задачи по умолчанию, и сценарии после сборки не были добавлены.
3. Я имею в виду, что в ваших файлах проекта у вас есть задача после сборки. The C:AMITemplates похоже на жестко заданное значение. Я мог бы предположить, что у вас возникла какая-то проблема с файловой структурой при попытке записи в каталог, который может не существовать, или у вас может не быть доступа к агенту, размещенному Microsoft.
4. Вы попали в точку с Мэттом. В файлах проекта я мог видеть командную строку события после сборки: скопируйте «$ (ProjectDir)ResponseTemplates *.xml» C:AMITemplates Пожалуйста, посоветуйте, как исправить это сейчас в конвейере сборки Azure
Ответ №1:
Сбой сборки при создании конвейера сборки Azure — Ошибка MSB3073 — задача VSBuild
Когда вы получаете ошибку MSBuild MSB3073, это означает, что путь к пользовательской командной строке или пользовательской цели в вашем проекте неверен. Вам необходимо проверить путь к этой командной строке.
Согласно комментарию, на который вы ответили, у вас есть командная строка события после сборки:
copy "$(ProjectDir)ResponseTemplates*.xml" C:AMITemplates
При выполнении этой командной строки без существующей папки C:AMITemplates
команда копирования сообщит об ошибке ошибки MSB3073. Поскольку целевая папка не может быть найдена.
Чтобы решить эту проблему, нам просто нужно добавить другую командную строку события после сборки, чтобы создать папку перед командной строкой копирования, например:
md C:AMITemplates
copy "$(ProjectDir)TextTemplate1.txt" "C:AMITemplates"
Теперь мы могли бы создать его с помощью размещенного агента VMImage (vs2017-win2016):