咕噜声执行停止批处理脚本

grunt execution stops batch script

我正在使用 cordova 和 yeoman + angularjs 进行开发。我采用了如下文件夹结构(Windows 上 dir 命令的输出):

C:\code\cordova\pg-droid-app>dir
 Volume in drive C is OSDisk
 Volume Serial Number is 404D-C81B

 Directory of C:\code\cordova\pg-droid-app

01/01/2015  03:46 PM    <DIR>          .
01/01/2015  03:46 PM    <DIR>          ..
01/01/2015  03:10 PM    <DIR>          pgdroid
01/01/2015  03:50 PM    <DIR>          pgdroid-app-frontend
01/01/2015  03:50 PM               241 showapp.bat
               1 File(s)            241 bytes
               4 Dir(s)  65,102,319,616 bytes free

pgdroid-app-frontend 是我运行的文件夹 yo angular(yeoman generator-angular)。 pgdroid 是设置 cordova 项目的文件夹。

Grunt 配置为将我的 HTML 开发工作的输出复制到 pgdroid\www 文件夹。它工作正常。

为了简化操作,我创建了以下批处理脚本 (showapp.bat):

echo === Running grunt... ===
cd pgdroid-app-frontend
grunt --force
echo === End Running grunt... ===
echo === Running cordova emulator ===
cd ..\pgdroid
cordova run android
cd ..
echo === End Running cordova emulator ===

该文件位于根目录中(请参阅此处共享的第一个输出)。执行 grunt 后脚本执行停止。我猜这是 grunt 程序的行为。它可能不是 return 成功退出代码,这可能是脚本突然停止的原因。

解决这个问题的方法是什么?

grunt 有点像 .bat(windows 批处理)文件或 批处理 程序。因此在一个批处理程序中,如果你想执行另一个批处理程序,你必须在它前面加上前缀call

call grunt --force