Node.js NodeJS eth lightwallet不';不允许子模块之间存在不同的bitcore库版本
模块eth lightwallet及其依赖项在bitcore lib版本保护方面存在一些问题。我注意到其中一些版本是0.15,另一些版本是0.14。你有解决这个问题的办法吗?我收到的错误如下所示Node.js NodeJS eth lightwallet不';不允许子模块之间存在不同的bitcore库版本,node.js,Node.js,模块eth lightwallet及其依赖项在bitcore lib版本保护方面存在一些问题。我注意到其中一些版本是0.15,另一些版本是0.14。你有解决这个问题的办法吗?我收到的错误如下所示 (function (exports, require, module, __filename, __dirname) { var Module;if(!Module)Module=(typeof Module!=="undefined"?Module:null)||{};var moduleOverr
(function (exports, require, module, __filename, __dirname) { var Module;if(!Module)Module=(typeof Module!=="undefined"?Module:null)||{};var moduleOverrides={};for(var key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var ENVIRONMENT_IS_WEB=typeof window==="object";var ENVIRONMENT_IS_WORKER=typeof importScripts==="function";var ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;var ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(ENVIRONMENT_IS_NODE){if(!Module["print"])Module["print"]=function print(x){process["stdout"].write(x+"\n")};if(!Module["printErr"])Module["printErr"]=function printErr(x){process["stderr"].write(x+"\n")};var nodeFS=require("fs");var nodePath=require("path");Module["read"]=function read(filename,binary){filename=nodePath["normalize"](filename);var ret=nodeFS["readFileSync"]
Error: More than one instance of bitcore-lib found. Please make sure to require bitcore-lib and check that submodules do not also include their own bitcore-lib dependency.
at Object.bitcore.versionGuard (\GitHub\X\node_modules\eth-lightwallet\node_modules\bitcore-mnemonic\node_modules\bitcore-lib\index.js:12:11)
at Object.<anonymous> (\GitHub\X\node_modules\eth-lightwallet\node_modules\bitcore-mnemonic\node_modules\bitcore-lib\index.js:15:9)
at Module._compile (module.js:570:32)
at Object.Module._extensions..js (module.js:579:10)
at Module.load (module.js:487:32)
at tryModuleLoad (module.js:446:12)
at Function.Module._load (module.js:438:3)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at Object.<anonymous> (\GitHub\X\node_modules\eth-lightwallet\node_modules\bitcore-mnemonic\lib\mnemonic.js:3:15)
Process finished with exit code 7`
(函数(导出、要求、模块、文件名、目录名){var模块;if(!module)模块=(模块类型!=“未定义”?模块:null){};var模块覆盖={};for(模块中的var键){if(module.hasOwnProperty(key)){moduleOverrides[key]=module[key]}var环境是{u WEB=typeof window==“object”var ENVIRONMENT_IS_WORKER=typeof importScripts==“function”;var ENVIRONMENT_IS_NODE=typeof process==“object”&&typeof require==“function”&!ENVIRONMENT_IS_WEB&!ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_NODE&!ENVIRONMENT_是_WORKER;if(ENVIRONMENT_是_NODE){if(!Module[“print”])模块[“print”]=函数print(x){process[“stdout”].write(x+“\n”)};if(!Module[“printErr”])Module[“printErr”]=函数printErr(x){process[“stderr”].write(x+“\n”)};var nodeFS=require(“fs”);var nodePath=require(“path”);模块[“read”]=函数read(文件名,二进制){filename=nodePath[“normalize”](文件名);var ret=nodeFS[“readFileSync”]
错误:找到多个bitcore库实例。请确保需要bitcore库,并检查子模块是否也包含其自身的bitcore库依赖项。
位于Object.bitcore.versionGuard(\GitHub\X\node\u modules\eth lightwallet\node\u modules\bitcore助记符\node\u modules\bitcore lib\index.js:12:11)
at对象。(\GitHub\X\node\u modules\eth lightwallet\node\u modules\bitcore助记符\node\u modules\bitcore lib\index.js:15:9)
在模块处编译(Module.js:570:32)
在Object.Module.\u extensions..js(Module.js:579:10)
在Module.load(Module.js:487:32)
在tryModuleLoad时(module.js:446:12)
在Function.Module.\u加载(Module.js:438:3)
at Module.require(Module.js:497:17)
根据需要(内部/module.js:20:19)
at对象。(\GitHub\X\node\u modules\eth lightwallet\node\u modules\bitcore助记符\lib\mnemonic.js:3:15)
进程已完成,退出代码为7`
这里提供的解决方案对我很有效:bitpay/bitcore#1454
这远不是解决这个问题的正确方法,但你可以
通过编辑文件来消除此错误
~/.nvm/versions/node/v4.8.3/lib/node_modules/bitcore/node_modules/insight-api/node_modules/bitcore-lib/index.js
第7行:bitcore.versionGuard=函数(版本){将其更改为:
bitcore.versionGuard=函数(版本){返回
我这样做了,到目前为止没有问题
全面验证解决方案 在主文件中,在全局中设置\u bitcore以在每次检索其值时返回undefined。\u bitcore只用于bitcore lib中的保护版本
此错误导致版本冲突。 我通过更改的版本修复了此错误
bitcore lib
和bitcore助记符/bitcore lib
by^0.15.0
(其中位核心助记符/bitcore lib
是^0.16.0
)
然后再次安装npm
Object.defineProperty(global, '_bitcore', {
get(){
return undefined
},
set(){}
})