FISCO BCOS 控制台 console solidity合约编译工具 生成abi bin java文件

Posted 软件工程小施同学

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了FISCO BCOS 控制台 console solidity合约编译工具 生成abi bin java文件相关的知识,希望对你有一定的参考价值。

下载控制台

https://fisco-bcos-documentation.readthedocs.io/zh_CN/latest/docs/console/console_of_java_sdk.html

 

# 若控制台版本小于v2.8.0,脚本sol2java.sh的使用方法如下:
$ bash sol2java.sh -h
# Compile Solidity Tool
./sol2java.sh [packageName] [solidityFilePath] [javaCodeOutputDir]
 	 packageName:
 		 the package name of the generated Java class file
 	 solidityFilePath:
 		 (optional) the solidity file path or the directory where solidity files located, default: contracts/solidity
 	 javaCodeOutputDir:
 		 (optional) the directory where the generated Java files located, default: contracts/sdk/java

# 若控制台版本大于等于v2.8.0,脚本sol2java.sh的使用方法如下:
$ bash sol2java.sh -h
usage: Compile Solidity Tool:
 -h,--help
 -l,--libraries <arg>   [Optional] Set library address information built
                        into the solidity contract
                        eg:
                        --libraries lib1:lib1_address lib2:lib2_address
 -o,--output <arg>      [Optional] The file path of the generated java
                        code, default is contracts/sdk/java/
 -p,--package <arg>     [Optional] The package name of the generated java
                        code, default is com
 -s,--sol <arg>         [Optional] The solidity file path or the solidity
                        directory path, default is contracts/solidity/

参数

  • packageName: 生成Java文件的包名
  • solidityFilePath: (可选)solidity文件的路径,支持文件路径和目录路径两种方式,参数为目录时将目录下所有的solidity文件进行编译转换。默认目录为contracts/solidity
  • javaCodeOutputDir: (可选)生成Java文件的目录,默认生成在contracts/sdk/java目录。

使用

$ cd ~/fisco/console
# 若控制台版本小于2.8.0
$ ./sol2java.sh org.com.fisco # 指定java包名

# 若控制台版本大于等于2.8.0
$ bash sol2java.sh -p org.com.fisco

把solidity代码放到这里 

会编译该文件夹下的所有文件

 

运行成功之后,将会在console/contracts/sdk目录生成java、abi和bin目录,如下所示。

|-- abi # 编译生成的abi目录,存放solidity合约编译的abi文件
|   |-- HelloWorld.abi
|   |-- Table.abi
|   |-- TableTest.abi
|-- bin # 编译生成的bin目录,存放solidity合约编译的bin文件
|   |-- HelloWorld.bin
|   |-- Table.bin
|   |-- TableTest.bin
|-- java  # 存放编译的包路径及Java合约文件
|   |-- org
|       |-- com
|           |-- fisco
|               |-- HelloWorld.java # 编译的HelloWorld Java文件
|               |-- Table.java  # 编译的CRUD接口合约 Java文件
|               |-- TableTest.java  # 编译的TableTest Java文件

java目录下生成了org/com/fisco/包路径目录。包路径目录下将会生成java合约文件HelloWorld.javaTableTest.javaTable.java。其中HelloWorld.javaTableTest.java是java应用所需要的java合约文件。

 

以上是关于FISCO BCOS 控制台 console solidity合约编译工具 生成abi bin java文件的主要内容,如果未能解决你的问题,请参考以下文章

FISCO BCOS 控制台 console solidity合约编译工具 生成abi bin java文件

Fisco-bsco 开发联盟链 账户之间的转账

FISCO BCOS 查看当前区块链节点的ID

FISCO BCOS 查看当前区块链节点的ID

FISCO BCOS(联盟链)搭建并使用控制台部署智能合约

FISCO BCOS权限控制一览