Возможна ли упаковка электронного строителя через npm (не пряжу)?

Я создал приложение python3, используя среду Electron (основанную на Node.js).
Для этого приложения зависимости были установлены с помощью npm, и мое приложение запускается с помощью команды npm start.

Следуя документации Electron, кажется, что Electron-builder - лучший вариант для распространения мое приложение для всех платформ. К сожалению, руководство по установке рекомендует использовать yarn, а не npm, поскольку npm может работать некорректно: просмотреть соответствующий билет

Теперь мой вопрос: поскольку билет довольно старый (2017 г.), можно ли теперь заставить его работать с npm? Так да как?

Если невозможно заставить его работать с npm, как мне перевести свой код на yarn?

Для информации:
Я спрашиваю, потому что я получаю сообщение об ошибке BIIIIIG, когда запускаю команду npm run dist. При необходимости я могу отредактировать сообщение, чтобы включить его (вместе с моим файлом 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 <[email protected]>",
  "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"
  }
}

Файл с ошибкой можно найти ЗДЕСЬ.


person Nootaku    schedule 26.03.2019    source источник
comment
Я уверен, что сообщение об ошибке будет полезно: D Пока вы это делаете, также опубликуйте свой package.json   -  person Elias    schedule 26.03.2019


Ответы (1)


Да, вы можете использовать npm. Проблема yargs объясняется здесь.

Ваши сообщения об ошибках сообщают вам. . . в чем заключаются ошибки.

вывод ошибки: [ОШИБКА] Неизвестный формат входного файла: /home/MYUSERNAME/Documents/APP_DIRECTORY/dist/.icon-set/icon_ICN#.jp2 Известные форматы файлов: * .j2k, * .jp2, * .jpc или * .jpt

Я не использую Linux и не работаю с ним, поэтому я не знаю наверняка, так ли это, но вы указываете формат файла .icns для своего значка. Это формат файла значков OSX. В вашем сообщении об ошибке говорится, что Electron Builder не знает, что с этим делать (в Linux).

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

Остальная часть страшного текста ошибки, вероятно, просто каскадом вытекает из этого.

person spring    schedule 27.03.2019
comment
Спасибо за ссылку. Хотя я хотел бы вернуться к этой ошибке: в документе я могу прочитать следующее: Путь к каталогу наборов значков или одному файлу png относительно ресурсов сборки или каталога проекта. Имя файла значка должно содержать размер значка (например, 32x32.png). По умолчанию создается автоматически на основе icns-файла macOS. Итак, я попробовал, создав свойство mac в моем package.json и вставив туда файл icns. Но я получаю ту же ошибку. Есть идеи, почему? - person Nootaku; 28.03.2019
comment
@Nootaku - похоже, есть некоторые проблемы. Я не работаю в Linux, но похоже, что объявление значка вне объекта целевой спецификации работает для этих людей. - person spring; 28.03.2019
comment
Какую команду мы поместим в сборку для версии npm программы yarn electronics-builder? - person Usama Ahmed; 14.02.2021