我为VS项目创建了一些ms构建任务。
不是必须使用每个任务更新VS Project文件,是否可以创建外部文件来保存构建任务并通过主项目文件引用它?
另外,我在nant中看到,您可以创建.bat文件来运行nant任务。是否可以与msbuild类似?
答案 0 :(得分:7)
是。您可以使用导入任务:
<Import Project="PathToMyIncludeFile\Include.proj" />
是的,你可以创建一个批处理文件来运行msbuild。语法是
msbuild <project> /t:target[;target] /p:propertyname=propertyvalue
在msbuild文件中定义目标的位置,属性是文件中定义的任何属性。如果未指定目标,则将运行msbuild文件元素中定义的缺省值。以下是几个例子:
所以使用Clean和Compile目标运行你的构建:
msbuild myproject.proj /t:Clean;Compile
或者使用Compile目标和发布配置运行构建:
msbuild myproject.proj /t:Compile /p:Configuration=Release
或者使用默认目标运行构建并设置版本属性:
msbuild myproject.proj /p:Version=2.0.0.1
命令行参数优先于文件中定义的值。因此,在上面的示例中,如果您将文件中定义的版本定义为:
<PropertyGroup>
<Version>1.0.0.0</Version>
<PropertyGroup>
构建将使用已配置的2.0.0.1版本
运行像往常一样,请查看MSDN以获取更多信息。