我尝试构建位于根目录下的单独目录中的插件。
<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'目标,但它不构建我的项目文件。如果可以避免的话,我真的不想单独构建每个项目。
任何想法都会很棒。谢谢,
答案 0 :(得分:3)
请参阅我的决议。
<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”目标。希望这有助于某人,因为这会给我带来相当大的痛苦。