Если вы посмотрите на файл журнала, сгенерированный вашим сервером сборки, вы, вероятно, увидите что-то вроде этого ...
CopySilverlightApplications:
Copying Silverlight applications
Copying <Path>.xap to <Path>.xap
MSBUILD : error : Copying file <Path>.xap failed. No Silverlight project specified for Silverlight output <Path>.xap. [<Path>.csproj]
CopySilverlightApplications - это цель, определенная в следующем файле.
C: \ Program Files (x86) \ MSBuild \ Microsoft \ VisualStudio \ v11.0 \ WebApplications \ Microsoft.WebApplication.targets
Включает это условие, которое объясняет, почему у вас нет проблемы при сборке с Visual Studio.
Condition="'$(BuildingInsideVisualStudio)' != 'true'"
У меня есть два определения сборки, где каждое строит свою конфигурацию. Одна из сборок была в порядке (Release), но в другой (Nightly) возникла проблема, которую вы описали. Когда я посмотрел файл проекта для приложения silverlight с помощью редактора XML, я обнаружил, что, хотя была группа свойств с условием, которое было преобразовано в true для Release, не было ни одного для Nightly.
Я вручную отредактировал файл, взяв копию группы свойств для Release и отрегулировал условие и OutputPath в соответствии с компоновкой Nightly. Это решило проблему.
Впоследствии я заметил, что если я перешел на страницу «Свойства» для проекта Silverlight в Visual Studio и переключился на конфигурацию Nightly с помощью раскрывающегося списка на панели инструментов, то для этой конфигурации автоматически был создан новый элемент PropertyGroup. Возможно, это также решит проблему.