在有网络连接的机器上打包 electron 及其依赖项,在没有网络连接的机器上安装这些离线包
好的,下面是完整的安装语句,分为两部分:在有网络连接的机器上打包 electron
及其依赖项,在没有网络连接的机器上安装这些离线包。
在有网络连接的机器上打包 electron
及其依赖项
# 创建一个目录来存放离线包
mkdir offline-packages
cd offline-packages
# 下载 electron 包
npm pack electron
# 下载 electron 的依赖项(假设 @electron/get 是一个依赖项)
npm pack @electron/get
# 将生成的 .tgz 文件复制到目标机器上的某个目录
# 例如:E:\new\clipboard-saver\my-electron-app\offline-packages
cp electron-*.tgz /path/to/target/machine/E:/new/clipboard-saver/my-electron-app/offline-packages/
cp @electron/get-*.tgz /path/to/target/machine/E:/new/clipboard-saver/my-electron-app/offline-packages/
在没有网络连接的机器上安装离线包
# 创建项目目录并初始化一个新的 Node.js 项目
mkdir my-electron-app
cd my-electron-app
npm init -y
# 创建 offline-packages 目录并将 .tgz 文件放入该目录
mkdir offline-packages
# 安装离线包
npm install ./offline-packages/electron-33.2.0.tgz --save-dev
npm install ./offline-packages/@electron/get-2.0.3.tgz --save-dev
# 验证已安装的 Electron 版本
npx electron -v
# 创建主进程文件 main.js
echo "const { app, BrowserWindow } = require('electron')
function createWindow () {
const win = new BrowserWindow({
width: 800,
height: 600,
webPreferences: {
nodeIntegration: true
}
})
win.loadFile('index.html')
}
app.whenReady().then(() => {
createWindow()
app.on('activate', () => {
if (BrowserWindow.getAllWindows().length === 0) {
createWindow()
}
})
})
app.on('window-all-closed', () => {
if (process.platform !== 'darwin') {
app.quit()
}
})" > main.js
# 创建 HTML 文件 index.html
echo "<!DOCTYPE html>
<html>
<head>
<title>My Electron App</title>
</head>
<body>
<h1>Hello, Electron!</h1>
</body>
</html>" > index.html
# 修改 package.json
echo "{
\"name\": \"my-electron-app\",
\"version\": \"1.0.0\",
\"description\": \"\",
\"main\": \"main.js\",
\"scripts\": {
\"start\": \"electron .\"
},
\"devDependencies\": {
\"electron\": \"^33.2.0\"
}
}" > package.json
# 运行应用
npm start
说明
-
在有网络连接的机器上:
- 创建一个目录
offline-packages
来存放离线包。 - 使用
npm pack
命令下载electron
及其依赖项(如@electron/get
)。 - 将生成的
.tgz
文件复制到目标机器上的E:\new\clipboard-saver\my-electron-app\offline-packages
目录。
- 创建一个目录
-
在没有网络连接的机器上:
- 创建项目目录并初始化一个新的 Node.js 项目。
- 创建
offline-packages
目录并将.tgz
文件放入该目录。 - 使用
npm install
命令安装离线包。 - 验证已安装的 Electron 版本。
- 创建主进程文件
main.js
和 HTML 文件index.html
。 - 修改
package.json
文件以包含启动脚本。 - 运行 Electron 应用。