您的位置:首页 > 编程语言 > Java开发

Hyperledger Fabric(三)- fabric-sdk-java

2017-12-26 20:06 761 查看

一、 Fabric SDK

目前最新的Hyperledger Fabric的官方文档(v1.1.0-preview)上,对于Fabric SDK的描述仍少的可怜,仅是简单的几句描述,再加上两个github链接:

fabric-sdk-node

fabric-sdk-java

其实通过Hyperledger在github上的项目我们可以看到,Hyperledger Fabric还提供了另外三种SDK:

fabric-sdk-go

fabric-sdk-py

fabric-sdk-rest

其中,当然是官方文档提到的
fabric-sdk-node
以及
fabric-sdk-java
的star更多,使用更 方便 。方便是不可能的,这辈子都不可能的。

官方仅仅是给出了一份 完善 较为完善的nodejs文档,和一份可以说根本不算文档的java 启动说明 eclipse启动说明。所以如果可以的话,暂时更推荐使用
fabric-sdk-node
,嗯然后今天我用到的是
fabric-sdk-java


二、 fabric-java-sdk

由于没有文档,那么最好的使用方法就是查看测试用例,先将测试用例跑通。测试用例中已经准备好了一套fabric的配置,只需在满足Prerequisites的基础上运行即可。

2.1 Prerequisites

JDK 1.8+

Apache Maven

IDEA / eclipse

Prerequisites

2.2 下载项目

$ git clone https://github.com/hyperledger/fabric-sdk-java[/code] 

2.3 导入项目

Intellij IDEA:以maven工程导入项目,导入依赖。

eclipse:详见fabric-sdk-java/docs/EclipseSetup.md

2.4 第三方依赖

Fabric SDK依赖于少量第三方库,在运行前在根目录位置执行以下指令,得到依赖列表:

$ mvn dependency:tree


或者是

$ mvn dependency:list


2.5 运行fabric

$ cd fabric-sdk-java/src/test/fixture/sdkintegration

$ ./fabric up


如果出现ERROR: mainfest for hyperledger/fabric-orderer:latest not found

则将fabric-sdk-java/src/test/fixture/sdkintegration/.env做如下修改

#Image tags:

IMAGE_TAG_FABRIC=:x86_64-1.0.1
IMAGE_TAG_FABRIC_CA=:x86_64-1.0.1

#IMAGE_TAG_FABRIC=

#IMAGE_TAG_FABRIC_CA=


如果提示:Pemmision denied

则给fabric.sh赋权

$ chmod +x fabric.sh


成功运行如图所示:



2.6 运行测试用例

我们挑选一份最常用的
End2endIT.java
运行:



注意:每次进行测试都需要重新运行fabric.sh脚本,建议以下指令对fabric环境进行清理,特别是在修改chaincode的情况下。

$ ./fabric.sh clean


2.7 构造自己的调用和查询方法

可以按照自己的需要提取方法方便调试:





三、 后话

体会到了文档的重要性,当然最终在有SDK的情况下对chaincode进行调试方便了很多。除此之外这份测试用例还能被拿来做多节点的测试,可以说是很强大了。

四、 参考链接

fabric-sdk-java
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐