如何在 linux 中将电子应用程序转换为单个打包程序安装程序(仅可执行文件)?
how to convert the electron app into single packager installer(only executable) in linux?
我已经将桌面应用程序创建到 linux 带有支持文件的应用程序中,现在我想制作成单个文件(可执行文件),以便可以与任何人共享。
有没有办法把它变成可执行文件
在任何 平台上打包任何 应用程序需要一些库,无论是静态链接还是动态链接。打包成一个单独的可执行文件永远行不通,至少对于 Electron 是这样。
将 Node.js Electron 源文件打包成可执行文件(也称为编译)很容易 - 如果您使用 electron-packager
。这是一个 Node.js "plugin" 您可以使用以下命令通过 NPM 安装(并保存为开发依赖项):
npm install --save-dev electron-packager
接下来,您可以像这样在 package.json
中创建一个 "build" 脚本:
"scripts": {
"build-linux64": "electron-packager . ProjectName --platform=linux --arch=x64"
}
此脚本将为 64 位 Linux 系统编译您的项目。对于其他开关,请参阅可用的 electron-packager 文档 here.
之后,在项目的主目录中应该有一个名为ProjectName-platform-arch
的文件夹,您可以将其压缩并分发。这个可执行文件(ProjectName
在输出文件夹中)将可以在任何 64 位 Linux OS 没有安装 Node.js 上执行。
但是,至少要提一下,这是不是安装程序。对于 Linux,您可以构建一个 "package",例如 *.deb
用于 Debian/Ubuntu 和派生,*.rpm
用于 RedHat、OpenSuSE、SLES、SLED、Fedora 和派生,或者 *.tar.gz
用于纯源代码包(如 apt
使用)。这无法通过 electron-packager
实现,但可以通过 Linux OS 的机载工具实现。网上有一些关于如何构建 Linux 包的很棒的教程,但这肯定超出了这个答案的范围。
我已经将桌面应用程序创建到 linux 带有支持文件的应用程序中,现在我想制作成单个文件(可执行文件),以便可以与任何人共享。 有没有办法把它变成可执行文件
在任何 平台上打包任何 应用程序需要一些库,无论是静态链接还是动态链接。打包成一个单独的可执行文件永远行不通,至少对于 Electron 是这样。
将 Node.js Electron 源文件打包成可执行文件(也称为编译)很容易 - 如果您使用 electron-packager
。这是一个 Node.js "plugin" 您可以使用以下命令通过 NPM 安装(并保存为开发依赖项):
npm install --save-dev electron-packager
接下来,您可以像这样在 package.json
中创建一个 "build" 脚本:
"scripts": {
"build-linux64": "electron-packager . ProjectName --platform=linux --arch=x64"
}
此脚本将为 64 位 Linux 系统编译您的项目。对于其他开关,请参阅可用的 electron-packager 文档 here.
之后,在项目的主目录中应该有一个名为ProjectName-platform-arch
的文件夹,您可以将其压缩并分发。这个可执行文件(ProjectName
在输出文件夹中)将可以在任何 64 位 Linux OS 没有安装 Node.js 上执行。
但是,至少要提一下,这是不是安装程序。对于 Linux,您可以构建一个 "package",例如 *.deb
用于 Debian/Ubuntu 和派生,*.rpm
用于 RedHat、OpenSuSE、SLES、SLED、Fedora 和派生,或者 *.tar.gz
用于纯源代码包(如 apt
使用)。这无法通过 electron-packager
实现,但可以通过 Linux OS 的机载工具实现。网上有一些关于如何构建 Linux 包的很棒的教程,但这肯定超出了这个答案的范围。