假设我需要在命令行中构建一个完整的解决方案(包含多个项目),是否可以为特定项目运行干净构建并为项目的其余部分运行增量构建?
谢谢。
使用 msbuild 并传递 Clean 和 Rebuild 目标:
msbuild path\to\solution\yoursolution.sln /t:Clean;Rebuild
或者如果您只想重建单个项目:
msbuild path\to\project\yourproject.csproj /t:Clean;Rebuild
msbuild 可在 Windows SDK 或 Visual Studio 命令提示符中使用。
MSBuild.exe MultiProjectSolution.sln /t:"ProjectName:clean"
仅清理解决方案中指定的项目。
清理具体项目:
msbuild MyProjectFile1 /t:Clean
msbuild MyProjectFile2 /t:Clean
...
必须对需要清理的所有项目重复此操作,因为 MSBuild 仅接受命令行上的单个项目。
逐步构建整个解决方案:
msbuild MySolutionFile
注意,这将为项目和解决方案构建默认配置/平台,通常是 Debug/AnyCPU 或 Debug/Win32。如果您想要特定的配置/平台,则必须向每个 msbuild 命令行添加如下参数:
/p:Configuration=Release /p:Platform=x64
。
就我而言,分号不起作用。我在 Clean target 之后使用逗号解决了它。
MSBuild Solution.sln /t:Clean,Build /p:Configuration=Release