Hyperledger fabric 错误:找不到模块'/api&x27;(超级分类账编写器)
从此安装Hyperledger Composer cli后,我尝试调用Composer命令,但出现以下错误:Hyperledger fabric 错误:找不到模块'/api&x27;(超级分类账编写器),hyperledger-fabric,hyperledger,hyperledger-composer,Hyperledger Fabric,Hyperledger,Hyperledger Composer,从此安装Hyperledger Composer cli后,我尝试调用Composer命令,但出现以下错误: module.js:549 throw err; ^ Error: Cannot find module './api' at Function.Module._resolveFilename (module.js:547:15) at Function.Module._load (module.js:474:25) at Module.require (module.js:596:1
module.js:549
throw err;
^
Error: Cannot find module './api'
at Function.Module._resolveFilename (module.js:547:15)
at Function.Module._load (module.js:474:25)
at Module.require (module.js:596:17)
at require (internal/module.js:11:18)
at Object.<anonymous> (/home/user/.nvm/versions/node/v8.11.1/lib/node_modules/composer-cli/node_modules/node-report/index.js:3:13)
at Module._compile (module.js:652:30)
at Object.Module._extensions..js (module.js:663:10)
at Module.load (module.js:565:32)
at tryModuleLoad (module.js:505:12)
at Function.Module._load (module.js:497:3)
我可以知道出了什么问题吗?在我的例子中,我在global
/usr/lib/node\u modules/composer cli中安装了composer cli,遇到了相同的问题。我不知道怎么了,但我试过:
将目录更改为composer cli:
cd/usr/lib/node\u模块/composer cli
在composer cli中本地重新安装节点报告模块:
sudo npm安装节点报告--不安全的perm
请注意,我没有将-g
参数放入sudo npm install
中,以使安装在composer cli本身的本地
节点报告
将使用g++
运行make
,以编译某些内容(由于某些原因,在composer cli安装过程中没有运行这些内容),并且它可以正常工作。。。现在我可以运行composer了
对于您的情况,请将工作目录设置为/home/user/.nvm/versions/node/v8.11.1/lib/node_modules/composer cli
。对于我,完全擦除
rm -rf /usr/lib/node_modules/composer-cli
执行
npm安装-g composer cli
是否执行了作业:)(重新安装节点报告不起作用)答案是
1) 不要求助于使用root或sudo安装Composer npm模块(如上面的评论所建议的那样)-这会导致npm出现问题。相反,请遵循npm安装的最佳实践:不要使用sudo或root来安装Composer-它将始终导致后续问题。在这里遵循最佳实践
2) 每个安装都有一个受支持的npm版本(自2018年6月起为5.x)
3) 安装-然后使用-nvm
管理您的节点版本-如上所述,支持节点8.11.x。对于NVM-请参阅-它将安装它。例如,nvm安装v8.11.1
2)nvm使用8.11.1
等
4) 如果您已经/以前使用sudo或root安装过Composer模块,请使用npm uninstall-g
(ie global)使用该id将其删除,然后遵循上文1)中提到的“最佳实践”,并非常直接地按照进行Composer模块安装
遵循这些步骤-每次都有效。注意调试(从问题中)at对象。(/home/user/.nvm/versions/node/v8.11.1/lib/node_modules/composer cli/node_modules/node report/index.js:3:13)
这就是为什么我的答案也是关于节点报告的。也许在您的情况下,它不是node-report。它是调试中的node-report,不知道为什么重新安装不起作用。使用nvm安装为我解决了这个问题。非常感谢。这解决了我的问题,就像问题中所说的那样。谢谢你@chrtian
rm -rf /usr/lib/node_modules/composer-cli