Вызвать node.js из makefile не удалось - PullRequest
0 голосов
/ 02 июля 2019

У меня есть простой hello world js файл, который я запускаю с терминала с 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

Что здесь происходит?

1 Ответ

1 голос
/ 03 июля 2019

Цель make потерпит неудачу, если какой-либо из ее рецептов вернет код ошибки (т. Е. Не ноль).node возвращает ненулевое значение.Попробуйте запустить

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

для подтверждения.

Вы можете либо обновить main.js, чтобы не возвращать ошибку (я полагаю, что это делается путем вызова process.exit() без параметров или 0 параметра, но я не эксперт по узлам или js,так что возьмите это с крошкой соли).

В качестве альтернативы вы можете заставить make игнорировать код возврата, добавив - в начало рецепта:

run: ${JS_DIR}/main.js
    -node ${JS_DIR}/main.js
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...