【问题标题】:Is packaging an Electron-builder via npm (not yarn) possible?是否可以通过 npm(而不是 yarn)打包 Electron-builder ?
【发布时间】:2019-08-16 15:25:35
【问题描述】:

我使用 Electron 环境(本身基于 Node.js)创建了一个 python3 应用程序。
对于这个应用程序,依赖项已使用 npm 安装,我的应用程序使用 npm start 命令启动。

documentation of Electron 之后,Electron-builder 似乎是为所有平台分发我的应用程序的最佳选择。不幸的是,installation guide 建议使用 yarn,而不是 npm,因为 npm 可能无法正常工作:see related ticket

现在我的问题是:由于门票相当旧(2017 年),现在是否可以使其与 npm 一起使用?那是怎么回事?

如果无法使其与 npm 一起使用,我如何将我的代码转换为 yarn ?

有关信息:
我问的原因是因为我在运行命令npm run dist 时收到 BIIIIIG 错误消息。 如果需要,我可以编辑帖子以包含它(连同我的 package.json 文件)

提前致谢。

编辑:添加错误和 package.json

{
  "name": "APP_NAME",
  "version": "1.0.0",
  "description": "The first version of APP_NAME's GUI.",
  "main": "index.js",
  "homepage": "https://docenhance.com",
  "author": "DocEnhance <nootaku@gmail.com>",
  "license": "MIT",
  "scripts": {
    "postinstall": "electron-builder install-app-deps",
    "start": "npm install && electron .",
    "pack": "electron-builder --dir",
    "dist": "electron-builder"
  },
  "build": {
    "appId": "com.docenhance.APP_NAME",
    "productName": "APP_NAME - PROJECT_NAME",
    "linux": {
      "target": "deb",
      "icon": "build/icon.icns",
      "category": "Office"
    }
  },

  "devDependencies": {
    "bootstrap": "^4.1.2",
    "electron": "^4.0.7",
    "electron-builder": "^20.39.0",
    "jquery": "^3.3.1"
  },
  "dependencies": {
    "bootstrap": "^4.3.1",
    "jquery": "^3.3.1",
    "popper.js": "^1.14.7",
    "python-shell": "^1.0.7"
  }
}

错误文件可以在HERE找到。

【问题讨论】:

  • 我确实认为错误消息会有所帮助:D 在您使用它的同时,也发布您的 package.json

标签: javascript python-3.x npm electron electron-builder


【解决方案1】:

是的,您可以使用npmhere 解释了 yargs 问题。

你的错误信息告诉你。 . .错误是什么。

错误输出:[ERROR] 未知的输入文件格式: /home/MYUSERNAME/Documents/APP_DIRECTORY/dist/.icon-set/icon_ICN#.jp2 已知的文件格式有 *.j2k、*.jp2、*.jpc 或 *.jpt

我不在 Linux 上使用或工作,所以我不确定是否是这种情况,但您正在为您的图标指定 .icns 文件格式。那是OSX icon file format。您的错误消息说 Electron Builder 不知道如何处理(在 Linux 上)。

"linux": {
      "target": "deb",
      "icon": "build/icon.icns",
      "category": "Office"
    }

其余的可怕错误文本可能只是从那里级联而来。

【讨论】:

  • 感谢您的链接。虽然我想回到那个错误:在documentaton我可以阅读以下内容:“图标集目录或一个png文件的路径,相对于构建资源或项目目录。图标文件名必须包含图标的大小(例如 32x32.png)。默认会根据 macOS 的 icns 文件自动生成。所以我通过在我的 package.json 中创建一个“mac”属性并在那里插入 icns 文件来尝试它。但我得到同样的错误。知道为什么吗?
  • @Nootaku - 看起来有一些issues。我不在 Linux 上工作,但似乎声明目标规范对象的图标 outside 对这些人有效。
  • 我们将在 build 中为 npm 版本的“yarn electron-builder”放置什么命令?
猜你喜欢
  • 1970-01-01
  • 2021-12-11
  • 1970-01-01
  • 2023-02-06
  • 1970-01-01
  • 2023-02-09
  • 1970-01-01
  • 2012-10-13
  • 1970-01-01
相关资源
最近更新 更多