我有一个 MSBuild 任务,用于编译解决方案文件中的特定项目。它看起来像这样:
<Target Name="Baz">
<MSBuild Projects="Foo.sln" Targets="bar:$(BuildCmd)" />
</Target>
在命令行中,我可以将BuildCmd
设置为Rebuild
或Clean
,它可以按预期工作:
msbuild /target:Baz /property:BuildCmd=Rebuild MyMsbuildFile.xml msbuild /target:Baz /property:BuildCmd=Clean MyMsbuildFile.xml
但是,要怎样设置BuildCmd
才能只进行构建呢?我已经尝试过使用Build
和Compile
,以及留空或未定义,但总是出现错误。
msbuild /target:Baz /property:BuildCmd=Build MyMsbuildFile.xml Foo.sln : error MSB4057:项目中不存在目标“bar:Build”。
msbuild /target:Baz /property:BuildCmd=Compile MyMsbuildFile.xml Foo.sln : error MSB4057:项目中不存在目标“bar:Compile”。
msbuild /target:Baz MyMsbuildFile.xml Foo.sln : error MSB4057:项目中不存在目标“bar:”。