- Published on
chaincode 安装 初始化 更新 注意事项
- Authors
- Name
- JiGu
- @crypto20x
##环境 fabric 1.4.x java-sdk 1.4.7
install
需在每一个peer上进行安装
安装的都是go版本的链码 在javasdk中,有几个小坑。 我链码完整路径是:D:\prj\mychaincode\src\mycc chainCodeSourcePath = "D:\prj\mychaincode" 这个类似GOPATH的定义,下面要有个src目录,再把chaincode工程丢里面 chianCodePath = "mycc"
chainCodePath的设置地方 sdk改了几次。目前最新的是在ChaincodeID.newBuilder()那设。
//需要设置两个路径
//设置chaincode路径
cid = ChaincodeID.newBuilder().setName(name).setVersion(ver).setPath(chaincodePath.toString()).build(); //这里设置
InstallProposalRequest insProposReq = client.newInstallProposalRequest();
insProposReq.setChaincodeID(cid);
//设置代码目录路径,类似gopath
insProposReq.setChaincodeSourceLocation(chainCodeSourcePath.toFile());
instantiate
只需在任意安装了chaincode的peer上进行一次初始化。 在未初始化的peer中调用链码,会自动启动一个链码docker。
- 初始化的时候可以不设置chaincodePath
update
update 之前需在每个节点中install。 跟初始化一样,只需在任意peer中进行update一次。
参考
(链码生命周期)[https://learnblockchain.cn/2019/07/03/chaincode-run/]