【问题标题】:Can I make Node.JS app self executable? [duplicate]我可以让 Node.JS 应用程序自行执行吗? [复制]
【发布时间】:2015-06-18 17:38:07
【问题描述】:

我是 Node.JS 初学者,所以如果我的问题太天真或太简单,请原谅我:) 我为自己做了一个简单的 node.js 应用程序:index.js,它需要 my_module.js。第二个只显示console.log("Hello")。

现在我想以某种方式将它打包成单个 exe 文件(我在 Windows 上工作),以便能够在另一台机器上运行它而无需安装节点。这可能吗?

【问题讨论】:

  • 谢谢詹姆斯。尽管您的链接没有直接帮助,但从那里我单击了其他链接,然后又单击了另一个链接,然后我到达了@ 987654321@。 JXcore 的解决方案最适合我!

标签: windows node.js jxcore


【解决方案1】:

here已经回答了核心问题,除了回答我还会提供一些关于Windows的细节。

基本上;

  1. 下载安装JXcore
  2. 转到您的应用文件夹
  3. 运行'jx package index.js myapp -native'

小心你拥有的可执行文件。如果您在 64 位 Windows 上,您最终将拥有应用程序的 64 位可执行文件。也许现在几乎所有的 Windows 安装都是 64 位的,这没什么大不了的。但是,您也可以通过在 32 位 Windows 上重新打包应用程序来获得 32 位版本。 AFAIK 即将到来的 JXcore 更新将处理这种混乱。

【讨论】:

  • 谢谢。我不知道我的 exe 应用程序的 64 位版本。由于此信息与我找到的 JXcore 解决方案有关,因此我将其标记为已接受。我为像@Alex 这样的其他人感到抱歉。我希望我可以标记更多接受然后一个:)
  • 你知道如何包含 NPM 吗?我现在可以打包我的应用程序,但是我的“app.js”文件使用的 NPM 位于另一个目录中 (../node-moduels/)
【解决方案2】:

我在这里写了一篇博文:

http://www.alexjamesbrown.com/blog/development/create-a-standalone-exe-to-run-a-node-js-application/

万一我的博客消失了:

下载高级 BAT 到 EXE 转换器
http://www.battoexeconverter.com/

从 Joyent 下载 Node.exe(我使用的是 0.8.2,因为这篇文章已有 5 年以上的历史了) http://nodejs.org/dist/v0.8.2/node.exe

现在我们准备将 node.js 可执行文件和我们的 js 文件捆绑到一个 exe 文件中。

创建 BAT 文件

CD %MYFILES%/
node test.js

%MYFILES% 是嵌入文件位置的变量(稍后会详细介绍)

​​>

出于本演示的目的,我创建了一个非常简单的 test.js 文件,如下所示:

for(i=1;i<=10000;i++) { 
 console.log(i);
}

现在,从 BAT 到 EXE 转换器的文件菜单中,选择 Build Exe (CTRL+ B)
输入最终 exe 文件的文件名。

接下来,将显示 EXE 选项窗格。

单击“嵌入文件”选项卡,然后选择您的 node.exe 和 test.js 文件。

在此处设置您认为需要的任何其他选项。

然后,只需单击 Build EXE。

您的可执行文件将被捆绑到您选择的保存位置。
运行它,你将有 1-10000 输出到控制台。

【讨论】:

  • ...我不喜欢留下一个链接作为答案——我稍后会将它的重要部分提取到这个答案中;我自己的博客在这个公司防火墙上被阻止了!
  • 谢谢亚历克斯,但我想我得到了 JXcore 的解决方案。请在我的问题下查看我的评论。您的解决方案也不错,但对我来说有点太复杂了。另外,我不再需要嵌入 node.exe,因为 JXcore 已经有了它。还是谢谢!
  • downvoted - 链接可能过时,任何答案都应该在某种程度上是自给自足的。
猜你喜欢
  • 2019-10-08
  • 1970-01-01
  • 2019-11-09
  • 2018-04-30
  • 1970-01-01
  • 1970-01-01
  • 2019-12-25
  • 1970-01-01
  • 2012-01-13
相关资源
最近更新 更多