0

我目前无法从 cron 作业运行 babel-node。当我手动运行它时,我的代码按预期运行,但相同的代码不会从 cron 运行 - 这是我的 cron 文件:

* * * * * cd /path/to/dir && /path/to/dir/node_modules/.bin/babel-node --presets es2015 /path/to/dir/babelScript.js >> ~/babelScript.log

babelScript.log 完全是空的。更重要的是,类似的代码在使用 node(不是 babel-node)时可以正常运行:

* * * * * cd /path/to/dir && /path/to/.nvm/versions/node/v6.11.2/bin/node /path/to/dir/nodeScript.js >> ~/nodeScript.log

在这种情况下,预期的输出被打印到 nodeScript.log。我完全困惑,所以非常感谢任何帮助!

4

1 回答 1

1

我还没有设法让这段代码从 cron 脚本运行,但实际上不建议在生产中使用 babel-node。

对于处于类似情况的其他人,我首先使用 babel 编译脚本,如下所示:

babel babelScript.js --out-file babelScript-compiled.js

然后,您可以像任何其他节点脚本一样从 cron 运行已编译的脚本:

* * * * * cd /path/to/dir && /path/to/.nvm/versions/node/v6.11.2/bin/node /path/to/dir/babelScript-compiled.js

更多信息在babel 文档中。

于 2017-09-06T20:33:11.907 回答