Javascript 将Node.js编译为可执行文件,而不将整个Node.js放在其中
因此,我试图将一个简单的hello world脚本打包到一个可执行的脚本中,但是当使用or时,看起来整个Node.js get都打包在其中,因为它们比需要的大得多(大约30 MB)。然而,我确实偶然发现,它最后一次更新是在2017年,不再工作(以及所有者本人) 那么,有没有其他东西可以编译得更好呢 提前谢谢 另外:这是需要运行的极其复杂的脚本Javascript 将Node.js编译为可执行文件,而不将整个Node.js放在其中,javascript,node.js,exe,Javascript,Node.js,Exe,因此,我试图将一个简单的hello world脚本打包到一个可执行的脚本中,但是当使用or时,看起来整个Node.js get都打包在其中,因为它们比需要的大得多(大约30 MB)。然而,我确实偶然发现,它最后一次更新是在2017年,不再工作(以及所有者本人) 那么,有没有其他东西可以编译得更好呢 提前谢谢 另外:这是需要运行的极其复杂的脚本 console.log(“StackOverflow太神奇了!”); 设置超时(()=>{ 进程退出(0); }, 2000); 以及我的本地安装版本:
console.log(“StackOverflow太神奇了!”);
设置超时(()=>{
进程退出(0);
}, 2000);
以及我的本地安装版本:
NPM
节点
6.14.12
14.16.1
不,
pkg
和nexe
是这样工作的-它们将您的代码和节点融合在一个可执行文件中。因为,基本上,您需要NodeJS来运行NodeJS脚本——例如,有一些特定的方法,如fs
,它们在常规js中不存在
无论如何,此时此刻有一些项目要查看:
但请记住,它们中的任何一个都不如
pkg
,它们完全支持最新的JS功能和所有NodeJS方法。我正在寻找一个编译器。我已经意识到没有Node我无法运行纯脚本。这能回答你的问题吗?在主题的注释中至少有8个链接线程可以重复。Nodejs是一个包含libuv、V8 Javascript运行时和Nodejs库的整体。它不是模块化的,因此您只能链接到实际使用的部分。如果您想要一个小的可执行文件,不要在您的环境中使用nodejs。即使使用真正的编译和动态链接语言(如C),您仍然可以将整个运行库DLL作为发行版的一部分,即使EXE本身可能非常小。