utk*_*agi 5 cmd window node.js nssm
我想创建一个nodejs服务,以便节点服务器在计算机启动时启动,而我不必一直保持命令提示符打开。我正在尝试通过使用NSSM来实现这一目标。
这是创建服务的命令:
nssm.exe install jewel-server C:\Program Files\nodejs\node.exe D:\jewel\server.js
Run Code Online (Sandbox Code Playgroud)
运行服务:
net start jewel-server
Run Code Online (Sandbox Code Playgroud)
但这不起作用并给出此错误:
The jewel-server service is starting.
The jewel-server service could not be started.
A service specific error occured: 3.
Run Code Online (Sandbox Code Playgroud)
我检查了错误代码3,表示路径不正确,但路径正确。您能告诉我我做错了什么吗,还是有其他开源和更可靠的替代品NSSM
版:
NSSM
version: 2.24
Windows-7 64bit
Run Code Online (Sandbox Code Playgroud)
参数传递的方式不正确,因此使用NSSM GUI设置参数:
Open GUI: nssm.exe install jewel-server
Run Code Online (Sandbox Code Playgroud)
GUI打开后,输入以下值。
Path: C:\Program Files\nodejs\node.exe
Arguments: D:\jewel\server.js
Press Install service
Run Code Online (Sandbox Code Playgroud)
做完了!您可以立即启动服务。
小智 5
根据http://nssm.cc/commands, 您可能需要尝试以下命令。
nssm install jewel-server "C:\Program Files\nodejs\node.exe"
nssm set jewel-server AppDirectory "D:\jewel"
nssm set jewel-server AppParameters server.js
nssm start jewel-server
Run Code Online (Sandbox Code Playgroud)
您可以通过以下方式检查nssm:
nssm edit jewel-server
nssm status jewel-server
Run Code Online (Sandbox Code Playgroud)
希望这会有所帮助。
小智 5
这是因为“程序文件”中的空间。您所要做的就是将其放在引号中,如下所示:
nssm.exe 安装jewel-server "C:\Program Files\nodejs\node.exe" D:\jewel\server.js