聚龙链(JulongChain)平台

聚龙链平台是一个基于Java的开源联盟链区块链底层技术平台。该项目旨在使用符合国家密码管理要求的国密算法和证书体系,打造一个数据防篡改、账本分布共享、系统安全可靠的开源区块链基础设施平台,为金融、政务、能源等重点领域区块链应用提供平台支撑。

链接

Jira任务管理系统

Gitlab代码库管理系统

当前版本

当前版本为0.8。

开源说明

聚龙链平台使用Apache License, Version 2.0 (Apache-2.0), located in the LICENSE file.

如何编译

编译环境:
集成开发环境: IntelliJ IDEA 2017.3.3
JAVA开发环境:JDK 1.8.0_151
Maven依赖管理工具:Maven 3.5.2
代码版本管理工具:Git

编译步骤:
1.从GitHub上下载项目源码。

2.添加框架支持。

3.设置Project环境。

4.Maven导入依赖包。

5.编译源码。

如何打包运行

前置条件:
系统已经安装JDK8和Docker,配置好JDK 1.8的环境变量。
开发好智能合约,也可直接下载系统智能合约样例https://github.com/JulongChain/julongchain-smartcontract-ab-java-0.8,使用时只保留src和pom.xml文件即可。

详细步骤:

命令行支持

启动Consenter节点
java -jar julongchain.jar consenter start

启动Node节点
java -jar julongchain.jar node start

查询Node节点服务状态
java -jar julongchain.jar node status

创建群组
java -jar julongchain.jar group create -c 127.0.0.1:7050 -g myGroup
参数说明:
-c 共识节点地址
-g 群组名称

加入群组
java -jar julongchain.jar group join -t 127.0.0.1:7051 -b /home/bcia/Julongchain/myGroup.block
参数说明:
-t 要加入群组的目标节点地址
-b 创世区块保存的文件地址

列出已加入的群组
java -jar julongchain.jar group list -t 127.0.0.1:7051
参数说明:
-t 要查询的目标节点地址

查询当前群组链信息
java -jar julongchain.jar group info -t 127.0.0.1:7051 -g myGroup
参数说明:
-t 要查询的目标节点地址
-g 群组名称

安装智能合约
java -jar julongchain.jar contract install -t 127.0.0.1:7051 -n mycc -v 1.0 -p /home/bcia/julongchain-smartcontract-ab-java-0.8
参数说明:
-t 要安装智能合约的目标节点地址
-n 智能合约名称
-v 智能合约版本
-p 智能合约源码路径(需包含src子目录和pom.xml文件)

实例化智能合约
java -jar julongchain.jar contract instantiate -t 127.0.0.1:7051 -c 127.0.0.1:7050 -g myGroup -n mycc -v 1.0 -i "{'args':['init','a','100','b','200']}" -P "OR ('Org1MSP.member','Org2MSP.member')"
参数说明:
-t 要实例化智能合约的目标节点地址
-c 共识节点地址
-g 群组名称
-n 智能合约名称
-v 智能合约版本
-i 智能合约init方法入参
-P 背书策略

调用智能合约
java -jar julongchain.jar contract invoke -t 127.0.0.1:7051 -c 127.0.0.1:7050 -g myGroup -n mycc -i "{'args':['move','a','b', '10']}"
参数说明:
-t 要执行智能合约的目标节点地址
-c 共识节点地址
-g 群组名称
-n 智能合约名称
-i 智能合约invoke方法入参

查询智能合约(不产生新的区块)
java -jar julongchain.jar contract query -t 127.0.0.1:7051 -g myGroup -n mycc -i "{'args':['query','a']}"
参数说明:
-t 要查询智能合约的目标节点地址
-g 群组名称
-n 智能合约名称
-i 智能合约invoke方法入参