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 я видел, что в некоторых случаях люди вручную настраивают пути к некоторым модулям, но я не уверен, как мне подходить к этому или даже делать это.