C++ MSBuild依赖项不是生成的
我有以下目标:C++ MSBuild依赖项不是生成的,c++,msbuild,C++,Msbuild,我有以下目标: <Target Name="Build" DependsOnTargets="Build_Shared" /> <Target Name="Build_Shared" DependsOnTargets="Build_Shared_x86;Build_Shared_x64"/> <Target Name="Build_Shared_x86" DependsOnTargets="SetPlatform_x86;Shared_1;..." /> &l
<Target Name="Build" DependsOnTargets="Build_Shared" />
<Target Name="Build_Shared" DependsOnTargets="Build_Shared_x86;Build_Shared_x64"/>
<Target Name="Build_Shared_x86" DependsOnTargets="SetPlatform_x86;Shared_1;..." />
<Target Name="Build_Shared_x64" DependsOnTargets="SetPlatform_x64;Shared_1;..." />
问题是x64目标中没有生成共享的_1依赖项。我猜MSBuild认为由于x86目标,它已经生成了。我不想为所有共享组件创建不同的x86/x64目标。我有一些依赖于构建共享的应用程序,它们需要x86和x64来构建,所以我需要这样的依赖关系。请注意,每个目标在构建过程中只执行一次。如果根据共享的_1目标有多个目标,则共享的_1将只运行一次,并且当第二个DependsOnTargets=..时,共享的_1将被视为已经运行。。;共享1;。。遇到了 如果需要多次运行同一目标,则需要使用嵌套的msbuild命令:
<Target Name="Build_Shared">
<MSBuild Projects="$(MSBuildProjectFile)" Targets="Shard_1" Properties="Platform=x86" />
<MSBuild Projects="$(MSBuildProjectFile)" Targets="Shard_1" Properties="Platform=x64" />
</Target>
您还可以使用Targets=SetPlatform_x86;共享1;。。如果你需要的话