首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >创建自可执行的node.js服务器

创建自可执行的node.js服务器
EN

Stack Overflow用户
提问于 2017-03-23 16:06:39
回答 6查看 626关注 0票数 2

我想创建一个可执行的bash文件,它将执行命令node app.js --目标是在已经安装节点的本地机器上打开一个可执行文件,该可执行文件位于项目目录中(它是一个express.js应用程序)。

我试图在mac上做这件事,我编写了一个.command文件,使其可执行,并添加了命令。问题是,进程会立即关闭,因为终端似乎会在最后一个命令之后自动添加exit;。我也想在Windows机器上做。

我不需要整个应用程序在一个可执行文件,只有选择双击一个文件,而不是打开终端和手动编写这个简单的命令。

知道如何做到这一点吗?

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2017-04-05 05:45:06

恐怕任何建议的解决方案都没有奏效或足够好使用--但我设法用以下方法解决了这个问题:

代码语言:javascript
复制
reldir=`dirname $0`
cd $reldir
npm start

@Gregory是最接近解决方案的-

首先-找到当前目录路径并转到它。接下来,与命令node app.js不同的是,调用npm start似乎是在进程退出后执行的,因此它只是保持活动状态。

票数 0
EN

Stack Overflow用户

发布于 2017-03-31 11:46:26

永远应该这么做。

除了节点之外,永远安装:

npm i -g forever

并将该命令更改为:

forever app.js

服务器应在进程关闭后继续运行。

要停止服务器,可以通过以下命令使用另一个.command文件:

forever stopall

票数 2
EN

Stack Overflow用户

发布于 2017-03-31 16:13:39

.command在用户文件夹中运行,因此您必须输入项目文件夹才能运行节点脚本

代码语言:javascript
复制
cd /something/project
node app.js 

对我来说很管用。

我认为你只需要把它变成一个.bat,它就能工作了

您可以使用npm启动而不是节点app.js。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42981303

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档