永远检测到脚本退出代码:0
Forever detected script exited with code: 0
我有一个 app4.js
内容:
var express = require('express');
var app = express();
app.get('/', function (req, res) {
res.send('Hello World!');
});
app.listen(3000, function () {
console.log('Example app listening on port 3000!');
});
我在 Win10 cmd
,我可以用 node app4.js
成功 运行 它并获得 Example app listening on port 3000!
,
但是当我使用 forever -a forever.log start app4.js
时,它显示错误
Forever detected script exited with code: 0
问题出在哪里?如何解决?
命令消息:
D:\app>node app4.js
Example app listening on port 3000!
^C
D:\app>forever -a forever.log start app4.js
warn: --minUptime not set. Defaulting to: 1000ms
warn: --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms
error: Forever detected script exited with code: 0
Another Answer说是和./bin/www
有关,但我不明白是什么意思
这意味着尝试将您的 app.js 代码移动到 bin 目录中的 www 文件。
在.bin/www
var express = require('express');
var app = express();
app.get('/', function (req, res) {
res.send('Hello World!');
});
app.listen(3000, function () {
console.log('Example app listening on port 3000!');
});
这似乎也是某些版本 node/forever 上的一个已知错误。
经过一些尝试我明白了,这是我完整的测试过程:
1.In开始,我正在看this video学习forever
,在10:24
使用forever start server.js
并成功运行 服务器文件。
2.Theoretically 如果我使用 forever start app4.js
它应该成功,但我得到错误:
D:\app>forever start app4.js
warn: --minUptime not set. Defaulting to: 1000ms
warn: --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms
info: Forever processing file: app4.js
error: Cannot start forever
error: log file C:\Users\admin\.forever\forever.log exists. Use the -a or --append option to append log.
3.By 消息,我想我应该使用 -a
将日志附加到某个文件,所以我在当前文件夹下创建了一个日志文件 forever2.log
,并使用 forever -a forever2.log start app4.js
,我得到了错误:
error: Forever detected script exited with code: 0
4.After 试了一下,突然仔细看了下我看的nodejs书,它的例子是forever start -l forever.log -o out.log -e err.log app.js
,也就是-x
放在[=23=之间] 和 app.js
,所以我将命令更改为 forever start -a forever2.log app4.js
并得到
warn: --minUptime not set. Defaulting to: 1000ms
warn: --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms
info: Forever processing file: forever2.log
这是正在处理forever2.log
,但我想要的是app4.js
5.Finally 我试了 forever start -a app4.js
,我得到了
warn: --minUptime not set. Defaulting to: 1000ms
warn: --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms
info: Forever processing file: app4.js
然后我运行浏览器在http://localhost:3000/
,Hello World!终于显示了!
我有一个 app4.js
内容:
var express = require('express');
var app = express();
app.get('/', function (req, res) {
res.send('Hello World!');
});
app.listen(3000, function () {
console.log('Example app listening on port 3000!');
});
我在 Win10 cmd
,我可以用 node app4.js
成功 运行 它并获得 Example app listening on port 3000!
,
但是当我使用 forever -a forever.log start app4.js
时,它显示错误
Forever detected script exited with code: 0
问题出在哪里?如何解决?
命令消息:
D:\app>node app4.js
Example app listening on port 3000!
^C
D:\app>forever -a forever.log start app4.js
warn: --minUptime not set. Defaulting to: 1000ms
warn: --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms
error: Forever detected script exited with code: 0
Another Answer说是和./bin/www
有关,但我不明白是什么意思
这意味着尝试将您的 app.js 代码移动到 bin 目录中的 www 文件。
在.bin/www
var express = require('express');
var app = express();
app.get('/', function (req, res) {
res.send('Hello World!');
});
app.listen(3000, function () {
console.log('Example app listening on port 3000!');
});
这似乎也是某些版本 node/forever 上的一个已知错误。
经过一些尝试我明白了,这是我完整的测试过程:
1.In开始,我正在看this video学习forever
,在10:24
使用forever start server.js
并成功运行 服务器文件。
2.Theoretically 如果我使用 forever start app4.js
它应该成功,但我得到错误:
D:\app>forever start app4.js
warn: --minUptime not set. Defaulting to: 1000ms
warn: --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms
info: Forever processing file: app4.js
error: Cannot start forever
error: log file C:\Users\admin\.forever\forever.log exists. Use the -a or --append option to append log.
3.By 消息,我想我应该使用 -a
将日志附加到某个文件,所以我在当前文件夹下创建了一个日志文件 forever2.log
,并使用 forever -a forever2.log start app4.js
,我得到了错误:
error: Forever detected script exited with code: 0
4.After 试了一下,突然仔细看了下我看的nodejs书,它的例子是forever start -l forever.log -o out.log -e err.log app.js
,也就是-x
放在[=23=之间] 和 app.js
,所以我将命令更改为 forever start -a forever2.log app4.js
并得到
warn: --minUptime not set. Defaulting to: 1000ms
warn: --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms
info: Forever processing file: forever2.log
这是正在处理forever2.log
,但我想要的是app4.js
5.Finally 我试了 forever start -a app4.js
,我得到了
warn: --minUptime not set. Defaulting to: 1000ms
warn: --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms
info: Forever processing file: app4.js
然后我运行浏览器在http://localhost:3000/
,Hello World!终于显示了!