Я создал проект MSBuild, который просто выполняет задачу msbuild с нашим файлом решения в качестве параметра. Я определил цель BeforeBuild, в которой я установил некоторые свойства, и цель сборки, которая выполняет задачу msbuild.
Я подтвердил, что при построении скрипта msbuild в консоли командной строки ошибок не было. Однако когда я использую его в задаче msbuild в моем проекте CCNET, я продолжаю получать следующую ошибку:
C: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Microsoft.Common.targets (483,9): ошибка: свойство OutputPath не установлено для проекта MyProject.msbuild. Убедитесь, что вы указали допустимую комбинацию конфигурации и платформы для этого проекта. Конфигурация = «Отладка» Платформа = «AnyCPU». Это сообщение может быть вызвано тем, что вы пытаетесь создать проект без файла решения и указали конфигурацию или платформу, отличную от конфигурации по умолчанию, которая не существует для этого проекта.
Я проверил журнал сборки и похоже, что ошибка возникает во время _CheckForInvalidConfigurationAndPlatform. Он даже не смог продолжить выполнение моей задачи по сборке! Поскольку сценарий предназначен только для создания решения на платформе Debug / Release и AnyCPU в качестве платформы, я попытался добавить следующие строки в свой проект msbuild:
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<OutputPath>.\bin\Debug\</OutputPath>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<OutputPath>.\bin\Release\</OutputPath>
</PropertyGroup>
Я все еще мог построить проект без ошибок в командной строке, но CCNET возвращает ту же ошибку, о которой говорилось выше.
Я не понимаю, почему CCNET продолжает получать ошибку, и я не знаю, что еще попробовать.
Пожалуйста помоги.