一、环境准备(这些安装过程较简单,请参考我之前的博客或者自行查找资料安装)
1、Ubuntu上
· Go
· Git
· Docker 18.03
· Docker compose 1.21.2
2、Windows上
· JDK1.8或以上
· Git
· Maven3
二、Ubuntu操作步骤:
1、源码操作
git clone https://github.com/hyperledger/fabric-sdk-java.git #下载源码
git checkout -b release-1.3 #切换到1.3分支
2、启动网络
cd fabric-sdk-java/src/test/fixture/sdkintegration #进入网络启动目录
./fabric.sh up #启动网络(启动后会一直打印类似下图所示的日志,刚开始以为是错误,我猜测这是fabric网络一直在进行节点间交互的日志),后面可以执行./fabric.sh restart命令重启网络
节点启动情况如下:
root@ubuntu:~# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
460d383c43e0 hyperledger/fabric-peer:1.3.0 "peer node start" 10 seconds ago Up 8 seconds 0.0.0.0:7056->7056/tcp, 0.0.0.0:7058->7058/tcp peer1.org1.example.com
4e3b0e641bb7 hyperledger/fabric-peer:1.3.0 "peer node start" 10 seconds ago Up 8 seconds 0.0.0.0:8056->8056/tcp, 0.0.0.0:8058->8058/tcp peer1.org2.example.com
51f026a2d0b1 hyperledger/fabric-peer:1.3.0 "peer node start" 11 seconds ago Up 10 seconds 0.0.0.0:8051->8051/tcp, 0.0.0.0:8053->8053/tcp peer0.org2.example.com
98ff47db98dc hyperledger/fabric-peer:1.3.0 "peer node start" 11 seconds ago Up 10 seconds 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com
ab14c5f55ffe hyperledger/fabric-orderer:1.3.0 "orderer" 15 seconds ago Up 11 seconds 0.0.0.0:7050->7050/tcp orderer.example.com
4170260a92c0 hyperledger/fabric-ca:1.3.0 "bash -c 'cp -R /tmp…" 15 seconds ago Up 13 seconds 0.0.0.0:7054->7054/tcp ca_peerOrg1
6239b9175ce0 hyperledger/fabric-tools:1.3.0 "/usr/local/bin/conf…" 15 seconds ago Up 12 seconds 0.0.0.0:7059->7059/tcp configtxlator
a50354a4da8a hyperledger/fabric-ca:1.3.0 "bash -c 'cp -R /tmp…" 15 seconds ago Up 12 seconds 0.0.0.0:8054->7054/tcp ca_peerOrg2
root@ubuntu:~#
三、Windows操作步骤:
1、源码操作
git clone https://github.com/hyperledger/fabric-sdk-java.git #下载源码
git checkout -b release-1.3 #切换到1.3分支
2、将fabric-sdk-java导入IDEA中,导入完毕后等待maven更新包完毕,pom文件中可能有一些关于maven和git插件的错误(如下图所示,个人估计没啥大的问题,可以先将其注释掉,也可暂时不用管)
3、执行maven compile进行编译
4、在fabric-sdk-java\src\test\java\org\hyperledger\fabric\sdk\testutils\TestConfig.java代码中配置IP(源码是localhost,改成Ubuntu服务器的IP)
5、执行fabric-sdk-java\src\test\java\org\hyperledger\fabric\sdkintegration\End2endIT.java代码进行连接交易测试。若控制台完整打印如下日志表示测试成功(测试过程可能较慢,因为此区块链网络本身节点多,配置也较低,有可能会出现连接超时的错误,建议多试几次或者提升服务器的配置)
RUNNING: End2endIT.
***** Enrolling Users *****
2019-01-01 09:46:09,683 main INFO HFCAClient:587 - CA Name: ca0, Version: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNRekNDQWVxZ0F3SUJBZ0lSQU0vdmFEdlBzeUlpQzlodm41bm5SOEF3Q2dZSUtvWkl6ajBFQXdJd2N6RUwKTUFrR0ExVUVCaE1DVlZNeEV6QVJCZ05WQkFnVENrTmhiR2xtYjNKdWFXRXhGakFVQmdOVkJBY1REVk5oYmlCRwpjbUZ1WTJselkyOHhHVEFYQmdOVkJBb1RFRzl5WnpFdVpYaGhiWEJzWlM1amIyMHhIREFhQmdOVkJBTVRFMk5oCkxtOXlaekV1WlhoaGJYQnNaUzVqYjIwd0hoY05NVGd3TWpJMU1USTBNekk1V2hjTk1qZ3dNakl6TVRJME16STUKV2pCek1Rc3dDUVlEVlFRR0V3SlZVekVUTUJFR0ExVUVDQk1LUTJGc2FXWnZjbTVwWVRFV01CUUdBMVVFQnhNTgpVMkZ1SUVaeVlXNWphWE5qYnpFWk1CY0dBMVVFQ2hNUWIzSm5NUzVsZUdGdGNHeGxMbU52YlRFY01Cb0dBMVVFCkF4TVRZMkV1YjNKbk1TNWxlR0Z0Y0d4bExtTnZiVEJaTUJNR0J5cUdTTTQ5QWdFR0NDcUdTTTQ5QXdFSEEwSUEKQkxxSTlkWDdkOU5HbzNndUw1RlA4b3RHc2lCak43QnpkNmRHL0NheUpEZmpOUkczNFlPOHQyOTl1NkVvRlh2egpwY2pBTUd1MFVLVHJ6TWZjeU91emNNeWpYekJkTUE0R0ExVWREd0VCL3dRRUF3SUJwakFQQmdOVkhTVUVDREFHCkJnUlZIU1VBTUE4R0ExVWRFd0VCL3dRRk1BTUJBZjh3S1FZRFZSME9CQ0lFSUxITU5NUHkwTStBZUdqNk9ob1IKaDAwZ1FUQ0VYOWp1czIwdVdVVFhkbmNjTUFvR0NDcUdTTTQ5QkFNQ0EwY0FNRVFDSUY3V2wzQTExekVOcjFDbwpxR3l1M2g0ZkN1a2t0RlZ5Ry9XUEpVeWxWWGpJQWlCOUxqcFhtOUVSZ0pNZlpzakRJekNqOU00YVF1Vk45WExrClhueDB1b0t6N2c9PQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==, issuerPublicKey: CgJPVQoEUm9sZQoMRW5yb2xsbWVudElEChBSZXZvY2F0aW9uSGFuZGxlEkQKIDwI9XgGar29lWsgJQ5P++7nzIIlwWWGLEJ51ykde2A1EiCqCseWTnj4fux5l9ozepRqBhlZDfRZQFOKy755TIRikhpECiBvNt5Wcruon1yTI2OEtyActT1S0GLFcfCWXRMFykliiBIgL2P8/HJvbEI5pLb0LgoTUA1JDYYS+/MKC5irpY6t25wiRAogCAVRXVLX9SAwPD64Io0XEBFzpU0AOLnlUO84CJEN/XMSINGlHg7UFotyrB8gssFv3O56azHl+2X+k0nC2fS4IJY7IkQKILXIuSKsaLPOEnzyALvLpiW5rwRrAZZGHtkGx4CDUyY3EiDTMRCTEROrAXB/ZINA+RP3FzeUgnDLxLOes+OubkOQIyJECiA0wS8aoljJ6XkaAm6viC3+OY1WhN+zlEgfckCrIeFzixIgOKoxJtgZrFma+LPjLye6/RYlejeNegmSePueBMhOctYiRAogP3UpF6MJUiwgP1WAEdcEUmA1qBzM/pnh/P4DvTClVNsSII0ME/JUvx2G/KanqXhHSdiOPO8JMvl/oT9j86NE5acMKogBCiAkGHyPPIpfZ62j37rU+vuyhyVn3GTzHxzfENb4L81d9hIg4lovQafbr+EQ8oOgJNQYJTNoxrwt03gX0KoS351tA9AaIAprAFVW8Rj/oz5qv8EgezttuHVW6CeYxhClVaUXgkv8IiCB5IQt3kHBcfaLZ0G6T07NcgX0yEcLq/SCjjIzC+OMITJECiBjX+SptFK5yiKrp6p2unJEQzicZrOl7pcjQaYCRscHxBIgNa9BFzQiJmywsmJlMcjSexW66XrrJZzTGZIGjeuiobU6RAogiyMMfc2QIHR94xmd+qIfFFeu8C0G3x/as3asLSH63YcSIEPbCHzdb/sMxS5h42sPx+bhLbJ0UzYMapdOKilxyluFQiC+JXB0Nrg+JUDkXOO30VuNa1OWTaY+uui66lvI59+s/EogS5zQNR8QLbjptQUWittI672tran5xUvtidx7QeTSjQVSIHRZz7ANrFN/racCNVLnIrCqzxKU+QGje3+AuKvFasmy, issuerRevocationPublicKey: LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KTUhZd0VBWUhLb1pJemowQ0FRWUZLNEVFQUNJRFlnQUViVk4zclNCWVhYbWkwYmhGK1ZabjNBT0h6eHFKNmdKSwpYQjV5ZEJIN3JXdElSRXQ1bGVnb3VxeUZuTFJodGZPUGJabXNHQ0ppazJ3aXFWcTdkSUpuYWVVZEVzWENrWmVuCjZyNlZaMlZzZktLV1ZrYUdkR0o3R0o4SzNqYUczNnVDCi0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQo=
2019-01-01 09:46:09,689 main INFO SampleStore:91 - Could not find the file "C:\Users\LIWENBIN\AppData\Local\Temp\HFCSampletest.properties"
2019-01-01 09:46:09,693 main INFO SampleStore:91 - Could not find the file "C:\Users\LIWENBIN\AppData\Local\Temp\HFCSampletest.properties"
2019-01-01 09:46:10,179 main INFO HFCAClient:587 - CA Name: ca0, Version: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNRekNDQWVxZ0F3SUJBZ0lSQU0vdmFEdlBzeUlpQzlodm41bm5SOEF3Q2dZSUtvWkl6ajBFQXdJd2N6RUwKTUFrR0ExVUVCaE1DVlZNeEV6QVJCZ05WQkFnVENrTmhiR2xtYjNKdWFXRXhGakFVQmdOVkJBY1REVk5oYmlCRwpjbUZ1WTJselkyOHhHVEFYQmdOVkJBb1RFRzl5WnpFdVpYaGhiWEJzWlM1amIyMHhIREFhQmdOVkJBTVRFMk5oCkxtOXlaekV1WlhoaGJYQnNaUzVqYjIwd0hoY05NVGd3TWpJMU1USTBNekk1V2hjTk1qZ3dNakl6TVRJME16STUKV2pCek1Rc3dDUVlEVlFRR0V