Построить все проекты в каталоге - PullRequest
2 голосов
/ 26 марта 2012

Я пытаюсь собрать свои плагины, которые находятся в отдельном каталоге в корне.

  <ItemGroup>
    <PluginProjectFiles Include="$(MSBuildStartupDirectory)..\..\Plugins\**\*.csproj"/>
  </ItemGroup>
  <Target Name="BuildPlugins">
    <MSBuild Projects="@(PluginProjectFiles)" Targets="Clean;Build" Properties="Configuration=Release" />
    <Message Text="Dir: $(MSBuildStartupDirectory)" />
  </Target>

Хотя у меня проблемы.Моя сборка запускает цель 'BuildPlugin', но она не собирает файлы моего проекта.Я действительно не хочу строить каждый проект отдельно, если я могу избежать этого.

Любые идеи были бы великолепны.Спасибо,

1 Ответ

3 голосов
/ 26 марта 2012

Пожалуйста, обратитесь к моему решению ниже.

  <PropertyGroup>
    <SrcFolder>$(MSBuildProjectDirectory)\..\..</SrcFolder>
  </PropertyGroup>
  <ItemGroup>
    <PluginProjectsFiles Include="$(SrcFolder)\Plugins\Plugin.*\*.csproj" />
  </ItemGroup>
  <Target Name="BuildPlugins">
    <Message Text="Building Plugins" />
    <MSBuild Projects="@(PluginProjectsFiles)" Targets="Clean;Build" Properties="Configuration=Release" />
    <Message Text="Plugins Built" />
  </Target>

Затем я изменил свой атрибут DependsOnTargets на моей основной цели сборки на мою цель 'BuildPlugins'.Надеюсь, это кому-то поможет, потому что это причинит мне сильную боль.

...