Composer版本不兼容,求简便的版本同步升级/降级方案
解决Hyperledger Composer版本不兼容与teardown脚本报错问题
我来帮你搞定这个版本同步的问题,同时解决teardown脚本找不到文件的报错~
一、核心:严格同步Composer所有组件版本
Hyperledger Composer的runtime、CLI、相关工具版本必须完全一致,你的runtime是0.19.4,所以要把CLI也对齐到同版本,步骤如下:
彻底清理旧版本残留
- 卸载全局CLI:
npm uninstall -g composer-cli - 清理npm缓存,避免残留文件干扰:
npm cache clean --force - 如果本地项目里也安装了composer-cli,也要卸载:
npm uninstall composer-cli
- 卸载全局CLI:
安装与runtime匹配的指定版本CLI
直接安装0.19.4版本:npm install -g composer-cli@0.19.4验证安装结果,确保版本一致:
composer --version输出应该显示
0.19.4。
二、解决teardownFabric.sh文件找不到的报错
这个错误是因为脚本依赖的Fabric配置文件路径不对,或者你使用的Fabric脚本版本和Composer版本不匹配,解决方法如下:
重新下载对应版本的Composer Fabric工具脚本
Composer 0.19.4对应Fabric 1.1的脚本,直接克隆指定版本的工具库:# 删除旧的工具目录(如果存在) rm -rf HLF-Windows-Fabric-Tool # 克隆0.19.4版本的工具脚本 git clone -b v0.19.4 https://github.com/hyperledger/composer-tools.git HLF-Windows-Fabric-Tool进入正确路径运行teardown脚本
切换到脚本所在的目录:cd HLF-Windows-Fabric-Tool/fabric-scripts/hlfv11/composer现在再运行:
./teardownFabric.sh就不会出现找不到文件的错误了。
三、更简便的一键版本同步方案
如果想彻底对齐整个环境版本,可以按以下步骤操作:
先彻底清理现有Fabric容器和镜像:
# 停止所有运行的容器 docker stop $(docker ps -aq) # 删除所有容器 docker rm $(docker ps -aq) # 删除Hyperledger相关镜像(可选,彻底清理环境) docker rmi $(docker images -aq | grep hyperledger)安装所有Composer相关工具的0.19.4版本:
npm install -g composer-cli@0.19.4 composer-rest-server@0.19.4 generator-hyperledger-composer@0.19.4使用官方脚本重新启动Fabric环境:
进入刚才下载的工具目录,依次运行:cd HLF-Windows-Fabric-Tool/fabric-scripts/hlfv11/composer ./startFabric.sh ./createPeerAdminCard.sh
这样整个环境的Composer组件和Fabric版本就完全同步了,不会再出现兼容性问题。
内容的提问来源于stack exchange,提问作者m.d venkatesh
相关产品推荐
相关产品推荐

