项目作者: AnswerAIL

项目描述 :
Fabric-SDK-Java 封装版项目 fabric-sdk-server
高级语言: Java
项目地址: git://github.com/AnswerAIL/fabric-sdk-server.git
创建时间: 2018-08-27T11:40:28Z
项目社区:https://github.com/AnswerAIL/fabric-sdk-server

开源协议:

下载


Fabric-SDK-Java 封装版项目 fabric-sdk-server

  • [x] 前言: 请各位务必仔细阅读此文档, 按照文档要求进行操作并运行项目。 此项目仅为Fabric爱好者基础入门版本SDK, 该版本不对 接入SpringBoot源码改造支持节点的高可用 共识最快OR最新通知机制 多智能合约部署 支持富查询 支持CA 以及 启用TLS 等功能进行支持。

  • [x] 区块链网络部署方案 fabric-network deploy

  • [x] 适用对象: 入门 Hyperledger-Fabric_release-1.1 Java版SDK

  • [x] 测试用例: APITest | BlockChainTest | InvokeTest | QueryTest | UpgradeTest | JoinPeerTest

  • [x] 测试用例执行顺序建议: APITest -> JoinPeerTest -> QueryTest -> InvokeTest -> QueryTest -> UpgradeTest -> QueryTest

  • JDK版本: JDK 1.8
  • 欢迎加星收藏

说明1. resources 目录结构说明

  1. # 1. 链码存放目录
  2. chaincodes
  3. EG: /resources/chaincodes/sample/src/github.com/chaincode_example02/chaincode_example02.go
  4. chaincodePath: github.com/chaincode_example02
  5. chaincodeSourceLocation: .../chaincodes/sample # ... 请补全绝对路径信息
  6. # 2. 通道配置信息、锚节点及创世纪块文件存放目录
  7. channel-artifacts
  8. # 3. 证书、签名密钥信息文件存放目录
  9. crypto-config
  10. # 4. 背书策略目录
  11. policy
  12. # 5. 协议文件目录(此版本暂无用到)
  13. protocol
  14. # 6. 配置文件
  15. config.properties

说明2. Fabric V1.1 通道配置信息及证书手动生成

  1. # 加入脚本目录
  2. cd /opt/gopath/src/github.com/hyperledger/fabric/examples/e2e_cli
  3. # 备份已有配置信息
  4. mkdir bak
  5. cp -R channel-artifacts crypto-config bak/
  6. # 移除已有配置信息, (如果现有配置信息还有用, 请先备份)
  7. rm -rf channel-artifacts/* crypto-config/*
  8. # 执行脚本, $channelName 为通道名称变量名
  9. source generateArtifacts.sh $channelName
  10. # 验证
  11. ll channel-artifacts
  12. ll crypto-config

说明3. 关闭每次重启fabric网络时重新生成通道及加密配置文件信息(建议)

  1. # 首次启动 network_setup.sh 脚本后, 修改以下代码, 重启 Fabric 服务
  2. vim network_setup.sh
  3. # 删除以下脚本代码
  4. # function networkUp -> source generateArtifacts.sh $CH_NAME # 删除 else 整个片段的代码
  5. # function networkDown -> rm -rf channel-artifacts/*.block channel-artifacts/*.tx crypto-config

如果不关闭的话, 重启Fabric网络时, 客户端需要重新替换通道相关文件信息

说明4. 注释掉tls配置(必须)

  1. cd /opt/gopath/src/github.com/hyperledger/fabric/examples/e2e_cli
  2. 1. vim base/peer-base.yaml
  3. CORE_PEER_TLS_ENABLED=true
  4. 改为
  5. CORE_PEER_TLS_ENABLED=false
  6. 2. vim base/docker-compose-base.yaml
  7. ORDERER_GENERAL_TLS_ENABLED=true
  8. 改为
  9. ORDERER_GENERAL_TLS_ENABLED=false
  10. 3. vim docker-compose-cli.yaml
  11. CORE_PEER_TLS_ENABLED=true
  12. 改为
  13. CORE_PEER_TLS_ENABLED=false
  14. 4. 如果使用 Fabric V1.1 E2E 测试转账DEMO, 请注释掉 script.sh 脚本所有操作区块链代码
  15. cd /opt/gopath/src/github.com/hyperledger/fabric/examples/e2e_cli
  16. vim scripts/script.sh
  17. # 注释块起始位置(包含以下部分)
  18. ## Create channel
  19. echo "Creating channel..."
  20. createChannel
  21. # 注释块截至位置(包含以下部分)
  22. #Query on chaincode on Peer3/Org2, check if the result is 90
  23. echo "Querying chaincode on org2/peer3..."
  24. chaincodeQuery 3 90

说明: 由于该项目sdk端不对tls进行支持, 因此区块链网络端必须关闭tls

5. About Project" class="reference-link">5. About Project


Project fabric-sdk-server Created By L.Answer At 2018-08-27

GitHub: https://github.com/AnswerAIL

Contact me By Email answer_ljm@163.com OR QQ 1072594307 OR WeChat JimLy_BUG

郑重说明: 此项目仅提供学习交流, 禁止用于任何商业用途, 如有其他用途请先联系作者。

End.


有问题请提Issues