我想在每次构建之前运行一些自定义批处理代码。在VS< 11 / C#应用程序中,我可以在项目设置中设置预构建事件。我在javascript metro VS11解决方案中找不到类似的设置。
任何人都知道它在哪里,或者选项是否已经消失(!)我可以采用哪种解决方法取代它?
答案 0 :(得分:7)
您可以使用Visual Studio .jsproj文件中的BeforeBuild目标来完成此操作:
<Target Name="BeforeBuild"></Target>
<Target Name="AfterBuild"></Target>
到这里来:
取消注释BeforeBuild目标并在其中添加自定义步骤。您可以使用该元素执行命令行脚本;可以使用与C#预构建步骤相同的$变量(例如$(ProjectDir))。您可以在目标中调用命令行脚本,但这与您通常使用C#预构建步骤进行的操作最接近。
作为示例,以下代码将调用名为processFile.bat的批处理文件,将其传递给项目根目录中的default.js路径,并在项目的输出目录中创建名为output.js的文件的输出路径(例如, / bin /调试模式下的调试):
<Target Name="BeforeBuild">
<Exec Command="processFile.bat "$(ProjectDir)default.js" "$(OutDir)output.js"">
</Target>
注意:&amp; quot;在Command参数内是有目的的,这可以确保在传递给processFile.bat并通过cmd.exe调用时引用这两个参数。