Gruntjs 使用PM2启动grunt服务

Gruntjs 使用PM2启动grunt服务,gruntjs,startup,pm2,serve,Gruntjs,Startup,Pm2,Serve,有没有办法使用PM2运行grunt service? 通过这种方式,我可以将我的环境设置为在计算机启动时自动启动 我发现了类似于: cd /path/to/project/ pm2 start grunt --name website -- serve 但这似乎不起作用。查看pm2日志时,我发现以下错误: PM2: 2015-10-19 18:23:44: Script C:\Users\...\AppData\Roaming\npm\grunt had too many unstable r

有没有办法使用PM2运行
grunt service
? 通过这种方式,我可以将我的环境设置为在计算机启动时自动启动

我发现了类似于:

cd /path/to/project/
pm2 start grunt --name website -- serve
但这似乎不起作用。查看pm2日志时,我发现以下错误:

PM2: 2015-10-19 18:23:44: Script C:\Users\...\AppData\Roaming\npm\grunt had too many unstable restarts (15). Stopped. "errored"

grunt-0 (err):     at Module._compile (module.js:413:25)
grunt-0 (err):     at Object.Module._extensions..js (module.js:452:10)
grunt-0 (err):     at Module.load (module.js:355:32)
grunt-0 (err):     at Function.Module._load (module.js:310:12)
grunt-0 (err):     at Function._load (C:\Users\cltessie\AppData\Roaming\npm\node_modules\pm2\node_modules\pmx\lib\transaction.js:62:21)
grunt-0 (err):     at Object.<anonymous> (C:\Users\cltessie\AppData\Roaming\npm\node_modules\pm2\lib\ProcessContainerFork.js:28:21)
grunt-0 (err):     at Module._compile (module.js:434:26)
grunt-0 (err):     at Object.Module._extensions..js (module.js:452:10)
grunt-0 (err):     at Module.load (module.js:355:32)
grunt-0 (err): SyntaxError: Unexpected token case
grunt-0 (err):     at exports.runInThisContext (vm.js:53:16)
grunt-0 (err):     at Module._compile (module.js:413:25)
grunt-0 (err):     at Object.Module._extensions..js (module.js:452:10)
grunt-0 (err):     at Module.load (module.js:355:32)
grunt-0 (err):     at Function.Module._load (module.js:310:12)
grunt-0 (err):     at Function._load (C:\Users\cltessie\AppData\Roaming\npm\node_modules\pm2\node_modules\pmx\lib\transaction.js:62:21)
grunt-0 (err):     at Object.<anonymous> (C:\Users\cltessie\AppData\Roaming\npm\node_modules\pm2\lib\ProcessContainerFork.js:28:21)
grunt-0 (err):     at Module._compile (module.js:434:26)
grunt-0 (err):     at Object.Module._extensions..js (module.js:452:10)
grunt-0 (err):     at Module.load (module.js:355:32)
PM2:2015-10-19 18:23:44:脚本C:\Users\…\AppData\Roaming\npm\grunt有太多不稳定的重启(15)。停止。“出错”
grunt-0(err):在模块处编译(Module.js:413:25)
grunt-0(err):位于Object.Module.\u extensions..js(Module.js:452:10)
grunt-0(err):位于Module.load(Module.js:355:32)
grunt-0(err):在Function.Module.\u加载(Module.js:310:12)
grunt-0(错误):at函数。\加载(C:\Users\cltessie\AppData\Roaming\npm\node\u modules\pm2\node\u modules\pmx\lib\transaction.js:62:21)
grunt-0(err):位于对象。(C:\Users\cltessie\AppData\Roaming\npm\node\u modules\pm2\lib\ProcessContainerFork.js:28:21)
grunt-0(err):在模块处编译(Module.js:434:26)
grunt-0(err):位于Object.Module.\u extensions..js(Module.js:452:10)
grunt-0(err):位于Module.load(Module.js:355:32)
grunt-0(错误):语法错误:意外的令牌大小写
grunt-0(err):位于exports.runInThisContext(vm.js:53:16)
grunt-0(err):在模块处编译(Module.js:413:25)
grunt-0(err):位于Object.Module.\u extensions..js(Module.js:452:10)
grunt-0(err):位于Module.load(Module.js:355:32)
grunt-0(err):在Function.Module.\u加载(Module.js:310:12)
grunt-0(错误):at函数。\加载(C:\Users\cltessie\AppData\Roaming\npm\node\u modules\pm2\node\u modules\pmx\lib\transaction.js:62:21)
grunt-0(err):位于对象。(C:\Users\cltessie\AppData\Roaming\npm\node\u modules\pm2\lib\ProcessContainerFork.js:28:21)
grunt-0(err):在模块处编译(Module.js:434:26)
grunt-0(err):位于Object.Module.\u extensions..js(Module.js:452:10)
grunt-0(err):位于Module.load(Module.js:355:32)

运行pm2启动grunt单独对我有效,但仍然无法解释为什么

嘿,这对我有效

cd /path/to/project/
pm2 start node_module/grunt/bin/grunt --name website -- serve
说明:PM2将在启动后尝试执行该文件,并在本地路径中查找该文件。grunt,I asume,对grunt全局安装的引用。但是node_module/grunt/bin/grunt在PM2的范围内,所以您可以运行此文件


我只将其用于本地开发,不建议将此解决方案用于生产,但在本地运行应用程序并检查pm2中的日志可能会有所帮助。此外,如果您在同一个pm2实例中运行后端服务,并且在执行“pm2日志”时针对该堆栈进行测试,那么您可以按顺序查看所有服务的整个执行跟踪。即使您有Kibana或splunk这样的集中式日志解决方案,这也是非常困难的,因为网络延迟总是会扰乱日志条目的顺序。

您找到了使用grunt运行pm2的解决方案吗