Задача MSBuild из файла .csproj - PullRequest
3 голосов
/ 03 августа 2010

Я пытаюсь добавить событие MSBuild после сборки в мой csproj, чтобы сделать это, я пытаюсь вызвать задачу MSBuild из цели Afterbuild в файле .csproj

  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
       Other similar extension points exist, see Microsoft.Common.targets.-->
  <Target Name="BeforeBuild">
  </Target>
  <Target Name="AfterBuild">
    <Message Text="Copying Files" />
    <MSBuild Projects="post.build" 
        Targets="Copy"
        ContinueOnError="false" />
  </Target>

Это файл post.build.

 <Project DefaultTargets="Copy"
 xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
 <Target Name="Copy">
     <Message Text="Copying Files inside COPY" />
     <CallTarget Targets="CopyToProfile"/>   </Target>
 </project>

Кажется, что csproj не может вызвать задачу MSbuild, может кто-нибудь подсказать, что здесь может пойти не так. Я получаю ошибку

ошибка MSB4057: цель "Копировать" делает не существует в проекте.

Ответы [ 2 ]

2 голосов
/ 04 августа 2010

Итак, в итоге я получил работу.

Я сделал так, как предложил Мартин, и

<Import Project="post.build"/>

Однако задача MSBuild все еще не работала, как планировалось.В итоге я использовал

<CallTarget Targets="copy"/>

для вызова по файлам.Похоже, что это ограничение в VS2008 и исправлено в VS2010.

0 голосов
/ 03 августа 2010

Вы уверены, что не указали опечатку в своем файле post.build?То есть не должно быть.XML чувствителен к регистру.

Кроме того, я бы дважды проверил, что файл post.build находится в той же папке, что и файл .csproj.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...