试图让一个项目在我的 debian 虚拟机上运行,但 foreman 拒绝启动。 node.js 错误消息不是很有帮助,因为它甚至没有告诉我找不到哪个模块。
sissi@debian:/media/fancystuff$ foreman start
22:05:33 web.1 | started with pid 2949
22:05:33 web.1 |
22:05:33 web.1 | module.js:337
22:05:33 web.1 | throw new Error("Cannot find module '" + request + "'");
22:05:33 web.1 | ^
'2:05:33 web.1 | Error: Cannot find module '/media/fancystuff/web.js
22:05:33 web.1 | at Function._resolveFilename (module.js:337:11)
22:05:33 web.1 | at Function._load (module.js:279:25)
22:05:33 web.1 | at Array.0 (module.js:484:10)
22:05:33 web.1 | at EventEmitter._tickCallback (node.js:190:38)
22:05:33 web.1 | process terminated
22:05:33 system | sending SIGTERM to all processes
btw 1:无论 web.js 是否存在或删除,错误消息都是相同的......这只会增加我的困惑。
顺便说一句2:“foreman check”给我“检测到有效的procfile(网络)”
叹息。
从这一行开始:
'2:05:33 web.1 | Error: Cannot find module '/media/fancystuff/web.js
看起来在您的 Procfile 中调用 node web.js
的行末尾有一个非打印字符,因为放置了 '
字符在模块名称字符串结束于行首之后。
编辑 Procfile 并确保该特殊字符消失,您的问题可能会得到解决。我可以在我的 Debian 开发人员上复制这个。在 EOL 之前的 web.js
后面添加 <32 个字符到服务器。
我是一名优秀的程序员,十分优秀!