宝玛科技网
您的当前位置:首页HyperledgerFabricjavachaincode编译部署(1.4V)

HyperledgerFabricjavachaincode编译部署(1.4V)

来源:宝玛科技网
HyperledgerFabricjavachaincode编译部署(1.4V)

前提条件:

构建好了⼀个拥有四个peer ⼀个Order 的1.4版本的Fabric⽹络。证书通过Cryptogen⽣成,没有使⽤CA服务。开启TLS。

⽹络中的peer都加⼊了⼀个 名为mychannel的通道中。 123⼀.链码编写

java版本的链码参考官⽹有很多,我使⽤的是

https://github.com/hyperledger/fabric-samples/tree/release-1.4/chaincode/chaincode_example02/java 项⽬本⾝是个gradle⼯程,因为我使⽤maven⽐较多,所以修改了项⽬中的build.gradle⽂件:添加

apply plugin: 'java

apply plugin: 'maven'将项⽬转换成⼀个maven⼯程。

⼆ chaincode安装 实例化

chaincode安装可以有两种⽅式,1 直接通过peer install 安装 2 通过peer package 打包我这⾥使⽤的是第⼀种:

⾸先需要明⽩的是 链码的安装需要在所有的peer节点上执⾏peer install。 实例化只需要在⼀个节点上实例化。使⽤ docker exec -it 进⼊容器。执⾏

peer chaincode install -n loc -v 1.0 -l java -p /usr/local/workspace/assert/java/

loc是chaincode的名称 1.0是版本 -l后⾯跟的是编程语⾔ ,java。 -p后⾯的路径就是第⼀步的链码放在服务器上的路径。这种⽅式服务器会通过java env的容器来构建java⼯程。

切换peer 节点,分别在每个peer上执⾏⼀次peer chaincode install的操作。

选择⼀个peer节点执⾏实例化操作:

peer chaincode instantiate -o orderer.example.com:7050 --tls true --cafile /usr/local/workspace/firstnetwork/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem -C mychannel -n loc -l java -v 1.0 -c '{\"Args\":[\"init\这⾥指定了背书策略。

表⽰成功。

第⼆种peer package的⽅式⼤同⼩异,后续会补充。

这⾥开启了TLS 和指定了背书策略,会影响下⾯介绍的通过JAVA SDK 调⽤该链码的编写。

因篇幅问题不能全部显示,请点此查看更多更全内容