@den4eg11

Почему при использовании upstart, node определяет приложение как модуль и не грузит?

Написал скрипт. Работает нормально. Хотел его сделать постоянно работающим с помощью upstart
Конфиг main.conf:

#!upstart
description "main.js "
author "1"

start on runlevel [2345]
stop on shutdown
respawn

script
export HOME="/folder"
echo $$ > /var/run/main.pid
exec /usr/bin/nodejs /folder/folder2/main.js
end script

pre-start script
echo "[`date -u +%Y-%m-%dT%T.%3NZ`] (sys) Starting"
end script

pre-stop script
rm /folder/folder2/main.pid
echo "[`date -u +%Y-%m-%dT%T.%3NZ`] (sys) Stopping"
end script

Логи:
Error: Cannot find module '/folder/folder2/main.js
'
at Function.Module._resolveFilename (module.js:337:15)
at Function.Module._load (module.js:287:25)
at Function.Module.runMain (module.js:467:10)
at startup (node.js:136:18)
at node.js:963:3
  • Вопрос задан
  • 186 просмотров
Решения вопроса 1
@den4eg11 Автор вопроса
Я нашел в чём проблема, думаю, это будет полезно не только мне, ибо я на это убил достаточно много времени. Вся проблема была в том, что unix системы и windows имеют разные форматы окончания строк и у меня был из-за этого невидимый символ в коде. Решение в нотепаде: выделить текст - Правка - Формат конца строк - преобразовать в unix формат
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
k12th
@k12th
console.log(`You're pulling my leg, right?`);
Что-то с путями напутано, по всей видимости.

> node определяет приложение как модуль и не грузит?
потому что так уж она устроена. Не обращайте внимания на слово module, если оно вас смущает, а обратите внимание на пути.
Ответ написан
@Nikon_NLG
chdir не пробовали сначала сделать?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы