首页 > 解决方案 > 从 makefile 调用 node.js 失败

问题描述

我有一个js从终端运行的简单的 hello world 文件node一切正常。当我尝试从我的运行完全相同的东西时,makefile它会打印 hello world 部分但随后失败。这是makefile中的相关目标:

run: ${JS_DIR}/main.js
    node ${JS_DIR}/main.js

这是我得到的错误:

$ make run
node /some/dir/main.js
Hello World
makefile:44: recipe for target 'run' failed
make: *** [run] Error 254

这里发生了什么?

标签: javascriptnode.jsmakefile

解决方案


如果任何配方返回错误代码(即非零),则 make 目标将失败。 node正在返回一个非零值。尝试运行

node /some/dir/main.js; echo $?

确认。

您可以更新 main.js 以不返回错误(我相信这是通过process.exit()不带参数或0参数调用来完成的,但我不是节点或 js 专家,因此请谨慎对待)。

或者,您可以通过-在配方的开头添加 a 来忽略返回码:

run: ${JS_DIR}/main.js
    -node ${JS_DIR}/main.js

推荐阅读