1

我有一个包含 30 个项目的解决方案。所有这些项目都有相同的自定义 MSBuild 脚本,它将所有编译的文件(从 _PackageTempDir)复制到硬盘上的另一个位置。

<ItemGroup>
  <DeployFilesBin Include="$(_PackageTempDir)\bin\*.*" />
</ItemGroup>
<Copy SourceFiles="@(DeployFilesBin)" DestinationFiles="@(DeployFilesBin->'$(DeployDestinationBin)\%(RecursiveDir)%(Filename)%(Extension)')" SkipUnchangedFiles="True" />

当我更改文件名时,该文件不会从不需要的目标目录中删除,因为我可能会得到一个模棱两可的引用异常。我不想要一个全局 MSBuild 脚本,因为我想使用 Visual Studio 的构建快捷方式来执行 csproj 文件。

有什么办法可以删除目标目录下的所有文件,然后执行所有csproj文件?也许一个目标被触发一次以声明一个全局变量以检查该特定清理目标是否已经运行?

4

0 回答 0