2020-11-16 09:53:43 版本 : 使用BSN测试网测试链码或发布服务上传链码时要注意哪些内容?
作者: 陈曦 于 2020年11月16日 发布在分类 / BSN官网 / 常见问题 / 通用类问题 下,并于 2020年11月16日 编辑
 历史版本

修改日期 修改人 备注
2020-11-16 17:42:33[当前版本] 陈曦 格式调整
2020-11-16 10:59:43 陈曦 格式调整
2020-11-16 10:02:46 陈曦 格式调整
2020-11-16 10:01:45 陈曦 格式调整

  • Fabric

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

  • FISCO BCOS

1、 上传链码包 (智能合约包) 时填写的链码名称 (合约名称) 要与主合约类名以及主合约的文件名一致 。

例: BsnBaseContract 链码包 (预置链码包)

BsnBaseContract

  └─BsnBaseContract.sol

  └─Table.sol

需在BsnBaseContract/下进行打包,zip包名称 无要求 。如主合约类名为BsnBaseContract,,主合约的文件名 即 为BsnBaseContract.sol,链码名称 (合约名称) 必须 填 为BsnBaseContract。

2、 目前 BSN适配的 FISCO BCOS 只支持 Solidity0.4.25以下版本 。

  •   XuperChain

上传链码包(智能合约包)时只需将.wasm文件压缩成zip包上传就行,zip包名称无要求。

例: BsnBase链码包(预置链码包)

BsnBase
  └─src
     └─bsnbase.cc
     └─bsnbase.wasm
  └─test
     └─bsnbase.test.js
  └─xdev.toml

src目录存放链码文件以及编译生成的wasm字节码文件,test目录存放单测文件 。

  • CITA

上传链码包 (智能合约包) 时填写的链码名称 (合约名称)要 与主合约类名一致 ,建议 主合约的文件名 也一致。

例: CitaBsnBaseContract链码包(预置链码包)

CitaBsnBaseContract

  └─CitaBsnBaseContract.sol

需在CitaBsnBaseContract/下进行打包,zip包名称 无要求 。如主合约类名为CitaBsnBaseContract,,主合约的文件名 即 为CitaBsnBaseContract.sol,链码名称 (合约名称) 必须 填 为CitaBsnBaseContract。

历史版本-目录  [回到顶端]
    区块链服务网络发展联盟