我有一个MSBuild任务来在解决方案文件中构建一个特定的项目.它看起来像这样:
在命令行中,我可以把我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 =编译MyMsbuildFile.xml Foo.sln:错误MSB4057:项目中不存在目标"bar:Compile".
msbuild/target:Baz MyMsbuildFile.xml Foo.sln:错误MSB4057:项目中不存在目标"bar:".
CheGueVerra.. 24
我知道你想用一个特定的命令构建一个目标:Build,Clean等.
我就是这样做的.
创建一个属性以接收构建命令,当未指定默认为Build时
Build
之后,创建将在参数中使用指定目标启动MSBuild的目标:
然后使用target和BuildCmd参数调用MSBuild文件,如下所示:
msbuild msbuild.xml /t:Stackoverflow /p:BuildCmd=Clean
只需确保目标存在于解决方案或项目文件中.
我知道你想用一个特定的命令构建一个目标:Build,Clean等.
我就是这样做的.
创建一个属性以接收构建命令,当未指定默认为Build时
Build
之后,创建将在参数中使用指定目标启动MSBuild的目标:
然后使用target和BuildCmd参数调用MSBuild文件,如下所示:
msbuild msbuild.xml /t:Stackoverflow /p:BuildCmd=Clean
只需确保目标存在于解决方案或项目文件中.
来自:http://msdn.microsoft.com/en-us/library/ms164311.aspx
/目标:目标
在此项目中构建这些目标.使用分号或逗号分隔多个目标,或单独指定每个目标./ t也可以接受.例如:/ target:Resources;编译