智能合约名以 HelloContract 为例
1,编译合约源码
命令:solc HelloContract.sol –bin –abi –optimize -o outputPath
solc .sol –bin –abi –optimize -o /
.sol:智能合约源文件;
–bin –abi:会生成 .bin .abi俩文件;
/:编译文件输出位置。
2,生成 .java文件
命令: web3j solidity generate .binPath .abiPath -o .javaPath -p packageName
在此会生成一个HelloContract.java文件,个人理解就是把solidity语言翻译成了java语言。
3,部署合约
Java中部署合约方法:
HelloContract contract = HelloContract.deploy(web3j, credentials, GAS_PRICE, GAS_LIMIT, initialValue, param1, … , paramN);
加载已知合约:
HelloContract contract = HelloContract.load(“contractAddress”, web3j, credentials, GAS_PRICE, GAS_LIMIT);