问题一:node_gyp使用版本不对
if not defined npm_config_node_gyp (node "C:UsersAdministratorAppDataRoaming pm ode_modules pm ode_modules pm-lifecycle ode-gyp-bin\.... ode_modules ode-gypin ode-gyp.js" rebuild ) else (node "C:UsersAdministratorAppDataRoaming pm ode_modules pm ode_modules ode-gypin ode-gyp.js" rebuild )
问题:明明装的是5.0.2版本,使用的却是3.9.2版本。
原因:命令上已经写明,在npm_config_node_gyp未配置情况,node_gyp使用的版本。
解决:删掉前者路径的node-gyp。
问题二:无法找到 v140 的生成工具
C:Program Files (x86)Microsoft Visual Studio2017BuildToolsCommon7IDEVCVCTargetsMicrosoft.Cpp.Platform.targets(6 7,5): error MSB8020: 无法找到 v140 的生成工具(平台工具集 =“v140”)。若要使用 v140 生成工具进行生成,请安装 v140 生成工具。或者,可以升级到当前 Visual Studio 工具,方式是通过选择 “项目”菜单或右键单击该解决方案,然后选择“重定解决方案目标”。 [F:projectelectron-source ode_modulesetter-sqlite3uilddepslocate_sqlite3.vcxpr oj] gyp ERR! build error gyp ERR! stack Error: `C:Program Files (x86)Microsoft Visual Studio2017BuildToolsMSBuild15.0BinMSBuild.exe` failed with exit code: 1 gyp ERR! stack at ChildProcess.onExit (C:UsersAdministratorAppDataRoaming pm ode_modules ode-gyplibuild.js:190:23) gyp ERR! stack at ChildProcess.emit (events.js:182:13) gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:237:12) gyp ERR! System Windows_NT 10.0.17134 gyp ERR! command "C:\Program Files\nodejs\node.exe" "C:\Users\Administrator\AppData\Roaming\npm\node_modules\node-gyp\bin\node-gyp.js" "rebuild" gyp ERR! cwd F:projectelectron-source ode_modulesetter-sqlite3 gyp ERR! node -v v10.3.0 gyp ERR! node-gyp -v v5.0.2 gyp ERR! not ok
问题:依赖的c++插件库,总是编译出错,报没有v140工具。
原因:缺少 Visual Studio v140工具。
解决:
1、去到 C:Program Files (x86)Microsoft Visual StudioInstaller 目录。
2、打开 Visual Studio Installer 工具。
3、安装 MSVC v140 - VS 2015 C++ 生成工具(v14.00) 工具。
问题三:This is a bug in `node-pre-gyp`
node-pre-gyp ERR! Completion callback never invoked! node-pre-gyp ERR! System Windows_NT 10.0.17134 node-pre-gyp ERR! command "C:\Program Files\nodejs\node.exe" "F:\project\electron-source\node_modules\@journeyapps\sqlcipher\node_modules\node-pre-gyp\bin\node-pre-gyp" "install" "--fallback-to-build" node-pre-gyp ERR! cwd F:projectelectron-source ode_modules@journeyappssqlcipher node-pre-gyp ERR! node -v v10.3.0 node-pre-gyp ERR! node-pre-gyp -v v0.10.0 node-pre-gyp ERR! This is a bug in `node-pre-gyp`. node-pre-gyp ERR! Try to update node-pre-gyp and file an issue if it does not help: node-pre-gyp ERR! <https://github.com/mapbox/node-pre-gyp/issues>
问题:执行到node-pre-gyp总是报错。
原因:未知。
解决:重启下电脑,就可以了……