我必须创建我的整个nodejs服务器应用程序的zip文件。 我应该能够解压缩并运行它,而无需安装依赖和应用程序。 它不应该是一个二进制文件。 依赖关系应该变平。如何压缩nodejs服务器应用程序?
如何做这件事情?
我必须创建我的整个nodejs服务器应用程序的zip文件。 我应该能够解压缩并运行它,而无需安装依赖和应用程序。 它不应该是一个二进制文件。 依赖关系应该变平。如何压缩nodejs服务器应用程序?
如何做这件事情?
谢谢大家的帮助。 我得到了我的问题的解决方案。 我正在使用npm包打包nodejs应用程序。 要打包应用程序的NodeJS有像摩根一些依赖,表达我们需要用NPM捆绑它有助于包括节点JS应用所需的其他模块。 有了这个,我们不需要执行npm install。 我们只需要安装bundle,然后在package.json中包含bundleDependencies字段,包括所需模块的名称。 然后执行然后运行命令npm pack。它会创建一个tar文件,只需将该文件复制到其他文件夹中,然后解压缩并运行服务器启动文件。 你要去哪里运行文件的NodeJS的地方,有应用程序的NodeJS应安装
我想你可能会找这样的:https://github.com/nexe/nexe
Nexe是一个命令行工具,编译你的Node.js应用程式到一个可执行文件。
一般来说,Node.js的应用程序已安装在项目的根目录node_modules
它的依赖。
因此,在运行npm install
(或npm install --production
)之后,您应该能够压缩项目目录,这应该是您所需要的。
如果任何node_modules
你的依赖是天然的插件,那么你将不能够在不同的体系结构或OS安装它们。如果有本地插件,则还需要确保目标计算机的node
版本与您创建zip文件的计算机的版本相同。 (无论如何,如果可以的话,确保目标计算机上的节点版本与源计算机的版本相同是个好主意。)
如果按上述方法执行,目标主机的一个明显要求是node
已经安装在那里。不知道你的用例是否可以,但听起来可能是这样吗?
你想使你的应用程序的.exe文件(编译后的文件)? – Deep
我能够使用jx核心制作.exe文件,但我现在不需要它。我想压缩我的整个nodejs服务器相关文件,并在任何其他平台上解压缩并运行主要的.js文件。 – ams
什么是“依赖关系应该扁平化”?只需使用现代版的NPM,它应该尽可能平坦。 – jfriend00