Ubuntu 16.04运行createPeerAdminCard.sh失败:已装composer-cli v0.19.2仍检测不到
解决Ubuntu 16.04中运行
createPeerAdminCard.sh检测不到composer-cli的问题 我之前在部署Hyperledger Composer时也碰到过一模一样的问题,明明已经装了指定版本的composer-cli,但脚本就是检测不到,结合你的报错信息,给你几个针对性的解决步骤:
先确认composer-cli是否全局可访问
脚本检测composer-cli的逻辑通常依赖全局环境变量,先在终端执行:composer --version如果没有输出v0.19.2的版本信息,说明你的composer-cli没有全局安装,或者全局路径没配置对。重新执行全局安装命令:
npm install -g composer-cli@0.19.2同时要确保npm的全局bin目录在系统PATH里,Ubuntu下默认是
~/.npm-global/bin,可以把它加到~/.bashrc文件末尾:echo 'export PATH="$HOME/.npm-global/bin:$PATH"' >> ~/.bashrc然后刷新环境变量:
source ~/.bashrc再次执行
composer --version确认版本正确。手动设置Fabric相关环境变量
虽然脚本会用默认值,但手动设置可以避免潜在的超时或版本兼容问题,在运行脚本前先执行:export FABRIC_VERSION=hlfv11 export FABRIC_START_TIMEOUT=30把超时时间设为30秒(比默认的15秒更长),可以避免因Fabric节点启动慢导致的后续错误。
如果是局部安装的composer-cli,临时添加路径到PATH
如果你是在项目目录下局部安装的composer-cli(没有加-g参数),需要把局部的bin目录临时加到PATH里,再运行脚本:export PATH="./node_modules/.bin:$PATH" ./createPeerAdminCard.sh检查脚本执行权限
虽然你已经用./运行了脚本,但还是可以确认一下权限是否足够:chmod +x createPeerAdminCard.sh
按照上面的步骤操作后,脚本应该能正确检测到composer-cli版本并执行成功。
内容的提问来源于stack exchange,提问作者darth_vader
相关产品推荐
相关产品推荐

