Uncaught Exception: ошибка: не удается найти модуль 'pcsclite'

Это первый раз, когда я что-то строю с Электроном. Теперь я прочитал все, что есть в разделе FAQ этого модуля ( node-pcsclite) и "Могу ли я использовать эту библиотеку в моем приложении Electron?" раздел. Я попробовал все из электронных документов ( используя модули нативных узлов). Единственное, что я не пробовал, это "Ручная сборка для пользовательской сборки Electron" - поскольку я не запускаю пользовательскую сборку Electron.

Вещи, которые я пытался:

  • Разные версии практически всего.
  • Пробовал делать все на OSX и Linux.
  • Старые версии узла и npm.
  • Различные электронные заголовки.
  • Проверено соответствие целевых архитектур процессора.
  • Попробовал упаковать приложение с помощью электронного компоновщика и запустить его на OSX.
  • Попытался переконфигурировать электронный компоновщик с такими параметрами, как buildDependenciesFromSource и npmRebuild, для которых установлено значение true.
  • Удалил node_modules, удалил кеш и попробовал переустановить все несколько раз.
  • Попытался вручную скопировать "pcsclite.node" из node_modules/@pokusew/pcsclite/build/Release"в папку сборки проекта и перепаковать его снова - все еще получая ту же ошибку.

Нет успеха Я получаю следующее исключение Uncaught каждый раз, когда запускаю приложение (будь то с "электроном" (запуск npm) или как полностью упакованное приложение с электронным компоновщиком).

Error: Cannot find module 'pcsclite'
    at Module._resolveFilename (internal/modules/cjs/loader.js:584:15)
    at Function.Module._resolveFilename (/Users/flackjap/Code/vozzi/electronic-service-book/first-test/node_modules/electron/dist/Electron.app/Contents/Resources/electron.asar/common/reset-search-paths.js:43:12)
    at Function.Module._load (internal/modules/cjs/loader.js:510:25)
    at Module.require (internal/modules/cjs/loader.js:640:17)
    at require (internal/modules/cjs/helpers.js:20:18)
    at Object.<anonymous> (/Users/flackjap/Code/vozzi/electronic-service-book/first-test/main.js:4:18)
    at Object.<anonymous> (/Users/flackjap/Code/vozzi/electronic-service-book/first-test/main.js:144:3)
    at Module._compile (internal/modules/cjs/loader.js:693:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:704:10)
    at Module.load (internal/modules/cjs/loader.js:602:32)

Я не уверен, если это общая проблема со сборкой собственных модулей или просто проблема именно с этим модулем. Я попробовал поискать в Google и не нашел достаточно связанных проблем, поэтому мне показалось, что проблема может быть именно с этим модулем.

Это мой package.json:

  "name": "electron-quick-start",
  "version": "1.0.0",
  "description": "A minimal Electron application",
  "main": "main.js",
  "scripts": {
    "start": "electron .",
    "pack": "electron-builder --dir",
    "distt": "electron-builder",
    "dist": "build"
  },
  "repository": "https://github.com/electron/electron-quick-start",
  "keywords": [
    "Electron",
    "quick",
    "start",
    "tutorial",
    "demo"
  ],
  "author": "GitHub",
  "license": "CC0-1.0",
  "devDependencies": {
    "electron-builder": "^20.38.5",
    "electron-rebuild": "^1.8.4"
  },
  "dependencies": {
    "electron": "^4.0.4",
    "@pokusew/pcsclite": "^0.5.1"
  },
  "build": {
    "buildDependenciesFromSource": true,
    "nodeGypRebuild": false,
    "npmRebuild": true,
    "appId": "electron.vozzi.app",
    "dmg": {
      "contents": [
        {
          "x": 110,
          "y": 150
        },
        {
          "x": 240,
          "y": 150,
          "type": "link",
          "path": "/Applications"
        }
      ]
    },
    "linux": {
      "target": [
        "AppImage",
        "deb"
      ]
    },
    "win": {
      "target": "squirrel",
      "icon": "build/icon.ico"
    }
  }
}

Единственное, что я нахожу немного подозрительным, это структура папок для этого модуля, так как у него есть две родительские папки (node_modules/@pokusew/pcsclite/...), и что, возможно, некоторые пути неверно настроены, но я не знаю, где посмотреть или как отлаживать. Однако в некоторых комментариях Stackru я видел, что в некоторых случаях люди вручную настраивают пути к некоторым модулям, но я не уверен, как мне подходить к этому или даже делать это.

0 ответов

Другие вопросы по тегам