使用 npm 安装 Electron 作为开发依赖

好的,下面是一个使用 npm packnpm install 命令来打包和安装离线版本的 npm 包的具体示例。我们将以 electron 为例,演示如何在有网络连接的机器上打包 electron,然后在没有网络连接的机器上安装它。

步骤 1: 在有网络连接的机器上打包 electron

  1. 创建一个目录: 在有网络连接的机器上,创建一个目录来存放离线包。

    复制代码
bash 复制代码
mkdir offline-packages
cd offline-packages
  • 下载 electron : 使用 npm pack 命令下载 electron 包。

bash 复制代码
npm pack electron

这会生成一个 .tgz 文件,例如 electron-33.2.0.tgz

  • 下载 electron 的依赖项electron 可能有一些依赖项,我们需要单独下载这些依赖项并打包。假设 electron 依赖于 @electron/get,我们可以使用类似的方法下载这些依赖项
bash 复制代码
npm pack @electron/get

这会生成一个 @electron/get-2.0.3.tgz 文件。
2. 复制文件 : 将生成的 .tgz 文件复制到目标机器上的某个目录,例如 E:\new\clipboard-saver\my-electron-app\offline-packages

步骤 2: 在没有网络连接的机器上安装离线包

  1. 创建项目目录: 在目标机器上,创建一个新的项目目录并初始化一个新的 Node.js 项目。
复制代码
  mkdir my-electron-app
  cd my-electron-app
  npm init -y
  • 创建 offline-packages 目录 : 在项目目录中创建一个 offline-packages 目录,并将从有网络连接的机器上复制的 .tgz 文件放入该目录。

复制代码
  mkdir offline-packages
  • 安装离线包 : 使用 npm install 命令安装离线包
复制代码
   npm install ./offline-packages/electron-33.2.0.tgz --save-dev
   npm install ./offline-packages/@electron/get-2.0.3.tgz --save-dev

步骤 3: 验证安装

  1. 检查已安装的 Electron 版本: 运行以下命令来检查已安装的 Electron 版本。
复制代码
  npx electron -v
  • 创建主进程文件 main.js : 在项目根目录下创建一个 main.js 文件,内容如下:

复制代码
  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()
    }
  })
  • 创建 HTML 文件 index.html : 在项目根目录下创建一个 index.html 文件,内容如下:

复制代码
  <!DOCTYPE html>
  <html>
  <head>
    <title>My Electron App</title>
  </head>
  <body>
    <h1>Hello, Electron!</h1>
  </body>
  </html>
  • 修改 package.json : 确保 package.json 中的 scripts 部分包含启动脚本:

复制代码
  {
    "name": "my-electron-app",
    "version": "1.0.0",
    "description": "",
    "main": "main.js",
    "scripts": {
      "start": "electron ."
    },
    "devDependencies": {
      "electron": "^33.2.0"
    }
  }
  • 运行应用: 在项目根目录下运行以下命令来启动你的 Electron 应用:
复制代码
   npm start

总结

通过以上步骤,你可以在有网络连接的机器上打包 electron 及其依赖项,然后在没有网络连接的机器上安装这些离线包并运行你的 Electron 应用。如果有任何问题,欢迎随时提问。

相关推荐
happymagic16 分钟前
java spring boot做的jar包程序,如何实现自动运行启动
java·运维·服务器·spring boot·jar
Dr.kangder1 小时前
嵌入式处理器仿真技术——Hypervisor 原理与实践
服务器·嵌入式硬件·架构·嵌入式
星蓝_starblue3 小时前
零服务器、零数据库!开源growth-board,利用GitHub自动管理刷题/学习/求职全流程
服务器·数据库·程序人生·系统架构·node.js·github·改行学it
云飞云共享云桌面6 小时前
广东精密机械设备工厂8-10人共享一台SolidWorks设计服务器
运维·服务器·3d·自动化·汽车·制造
jieyucx6 小时前
【高级利用】条件竞争与逻辑漏洞:与服务器赛跑的艺术
android·运维·服务器·web安全·文件上传
tianyuanwo6 小时前
服务器OS组件研发效能度量可视系统——顶层方案设计与阶段性规划
运维·服务器·度量系统
初级炼丹师(爱说实话版)6 小时前
Ubuntu服务器配置docker
服务器·ubuntu·docker
机建狂魔7 小时前
Codex 接入第三方模型 API 实战:以 Mimo 为例
java·服务器·数据库·ai·ai编程·codex
土星云SaturnCloud7 小时前
智慧温室精准环控:土星云边缘计算设备实现温光水肥本地闭环调节
服务器·人工智能·ai·边缘计算
深爱水瓶 血影S狂风8 小时前
函数调用过程探究
linux·运维·服务器