2015-09-12 4 views
0

Моя задача - создать настольное приложение HTML5, которое работает с последовательным портом, потому что у меня есть arduino с другой стороны на COM-порту.node-serialport не работает с Electron

Я установил electron-prebuilt и serialport упаковки оба (я указал их в package.json). В моей главной странице я включил main.js, и я попытался потребовать serialport пакета, но я получил следующее сообщение об ошибке:

Uncaught Error: Cannot find module 'D:\Projects\arduino\HTMLPresentation\node_modules\serialport\build\serialport\v1.7.4\Release\node-v45-win32-x64\serialport.node'

Я прочитал некоторые темы QA об этой проблеме (некоторых abracadabras с node-gyp) , но замечание работает для меня: на обоих окнах 8.1 и Ubuntu 15.04. Я не знаю, как принять пакет serialport для электрона.

+0

Вы не первый, у кого проблемы с собственными модулями. Вам просто нужно построить его против электронных заголовков! –

+0

Как? Все руководства, которые я видел, хороши только для предыдущих версий. – Rainman

+0

Вы видели [doc] (https://github.com/atom/electron/blob/master/docs/tutorial/using-native-node-modules.md)? –

ответ

0

Использование Electron-Rebuild: Этот исполняемый файл перестраивает собственные модули io.js против версии io.js, которую использует ваш проект Electron. Это позволяет использовать собственные модули io.js в приложениях Electron без вашей системной версии io.js, соответствующей точно.

npm install --save-dev electron-rebuild 

# Every time you run "npm install", run this 
./node_modules/.bin/electron-rebuild 

# On Windows if you have trouble, try: 
.\node_modules\.bin\electron-rebuild.cmd