修改日期 | 修改人 | 备注 |
2020-11-16 17:42:33[当前版本] | 陈曦 | 格式调整 |
2020-11-16 10:59:43 | 陈曦 | 格式调整 |
2020-11-16 10:02:46 | 陈曦 | 格式调整 |
2020-11-16 10:01:45 | 陈曦 | 格式调整 |
1、go打包规范
main函数必须在项目中所有链码的上级或同级,打包路径为main函数所在同级文件夹,main函数路径为基于src的引用路径。
例: bsnBaseCC链码包(预置链码包)
bsnBaseCC
└─main.go
└─ChainCode/
└─models/
└─utils/
需在bsnBaseCC/下进行打包(包名称 无要求 ),main函数路径(引用路径)为bsnBaseCC 。
例:github上的FabricBaseChaincode链码包(预置链码包)
github.com
└─BSNDA
└─FabricBaseChaincode
└─chaincode
└─go
└─bsnBaseCC
└─main.go
└─ChainCode/
└─models/
└─utils/
需在github.com/BSNDA/FabricBaseChaincode/chaincode/go/bsnBaseCC/下进行打包(包名称 无要求 ),main函数路径(引用路径)为 github.com/BSNDA/FabricBaseChaincode/chaincode/go/bsnBaseCC 。
2、 java打包规范
gradle或maven构建的项目,项目中必须包含build.gradle 或 pom.xml文件。
例:bsnBaseCC链码包(预置链码包)
bsnBaseCC
└─build.gradle
└─src
└─main
└─java
└─com.example.javacc
└─javacc.java
需在bsnBaseCC/下进行打包,zip包名称 无要求 。
3、 NodeJs 打包规范
必须在项目根目录下创建package.json。需在bsnBaseCC/下进行打包,zip包名称 无要求 。
例:bsnBaseCC链码包
bsnBaseCC
└─marbles_chaincode.js
└─package.json
1、 上传链码包 (智能合约包) 时填写的链码名称 (合约名称) 要与主合约类名以及主合约的文件名一致 。
例: BsnBaseContract 链码包 (预置链码包)
BsnBaseContract
└─BsnBaseContract.sol
└─Table.sol
需在BsnBaseContract/下进行打包,zip包名称 无要求 。如主合约类名为BsnBaseContract,,主合约的文件名 即 为BsnBaseContract.sol,链码名称 (合约名称) 必须 填 为BsnBaseContract。
2、 目前 BSN适配的 FISCO BCOS 只支持 Solidity0.4.25以下版本 。
上传链码包(智能合约包)时只需将.wasm文件压缩成zip包上传就行,zip包名称无要求。
例: BsnBase链码包(预置链码包)
BsnBase
└─src
└─bsnbase.cc
└─bsnbase.wasm
└─test
└─bsnbase.test.js
└─xdev.toml
src目录存放链码文件以及编译生成的wasm字节码文件,test目录存放单测文件 。
上传链码包 (智能合约包) 时填写的链码名称 (合约名称)要 与主合约类名一致 ,建议 主合约的文件名 也一致。
例: CitaBsnBaseContract链码包(预置链码包)
CitaBsnBaseContract
└─CitaBsnBaseContract.sol
需在CitaBsnBaseContract/下进行打包,zip包名称 无要求 。如主合约类名为CitaBsnBaseContract,,主合约的文件名 即 为CitaBsnBaseContract.sol,链码名称 (合约名称) 必须 填 为CitaBsnBaseContract。