簡體   English   中英

如何為Electron重建本機npm模塊?

[英]How to rebuild native npm modules for Electron?

請幫我理解如何重建Electron 1.6.2的原生npm模塊?

我使用https://electron.atom.io/docs/tutorial/quick-start中的步驟創建了一個簡單的Electron應用程序。
然后我安裝了ref包並將其加載到main.js.
ref包 - 它是本機包。 我必須重建這個包才能在Electron應用程序中使用它。

我使用以下教程來重建本機包 - https://github.com/electron/electron/blob/master/docs/tutorial/using-native-node-modules.md

有三種方法可以重建本機npm包:

1)“使用電子重建安裝模塊並重建Electron”:
我安裝了電子重建npm包。
然后,根據教程,我只需運行以下命令:
\\ node_modules.bin \\電子rebuild.cmd
但是電子重建嘗試下載https://atom.io/download/electron/v1.6.2/iojs-v1.6.2.tar.gz
如果Electron發布文件位於此處,為什么它從https://atom.io/download/electron下載了一些內容 - https://github.com/electron/electron/releases
Electron 1.6.2僅在幾周前發布,但iojs-v1.6.2.tar.gz於2015年3月發布。
我是否正確理解電子重建下載了錯誤的文件?

2)使用node-gyp手動構建Electron包。
設置HOME =%USERPROFILE%/。electron-gyp
cd ./node_modules/ref
node-gyp rebuild --target = 1.6.2 --arch = x64 --dist-url = https://atom.io/download/electron

再次,dist-url使用https://atom.io/download/electron
為什么?
我試過不要使用--dist-url。
但在這種情況下,node-gyp會下載以下文件:
gyp http GET https://iojs.org/download/release/v1.6.2/iojs-v1.6.2.tar.gz
gyp http 200 https://iojs.org/download/release/v1.6.2/iojs-v1.6.2.tar.gz
gyp http GET https://iojs.org/download/release/v1.6.2/SHASUMS256.txt
gyp http GET https://iojs.org/download/release/v1.6.2/win-x64/iojs.lib
gyp http GET https://iojs.org/download/release/v1.6.2/win-x86/iojs.lib
gyp http 200 https://iojs.org/download/release/v1.6.2/SHASUMS256.txt
gyp http 200 https://iojs.org/download/release/v1.6.2/win-x64/iojs.lib
gyp http 200 https://iojs.org/download/release/v1.6.2/win-x86/iojs.lib
這是對的嗎?

3)使用npm重建本機包:
rem#Electron的版本。
設置npm_config_target = 1.6.2
rem #Electron的架構,可以是ia32或x64。
設置npm_config_arch = x64
設置npm_config_target_arch = x64
rem#下載電子標題。
rem set npm_config_disturl = https://atom.io/download/electron
rem#告訴我們正在為Electron構建的node-pre-gyp。
設置npm_config_runtime =電子
rem#告訴node-pre-gyp從源代碼構建模塊。
設置npm_config_build_from_source = true
rem#安裝所有依賴項,並將緩存存儲到〜/ .electron-gyp。
設置HOME =%USERPROFILE.electron-gyp
npm安裝

再次https://atom.io/download/electron
為什么?

有誰知道如何正確重建Electron 1.6.2的ref本機包?

你是對的,給node-gyp的版本映射到Electron版本而不是內部節點版本,因為那是上傳頭文件的版本。 實際上這背后有一個更復雜的解釋,但它對最終用戶來說無關緊要。 您提供的代碼是正確的,來自文檔。 有用。 無需了解原因的內部運作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM