没有找到您期望的内容请尝试其他搜索词,或拨打阿里云售前服务热线 95187
蚂蚁区块链合约平台支持 Solidity 智能合約针对合约源代码的编译,可以直接通过蚂蚁区块链 Cloud IDE 合约开发环境进行合约编译、部署、测试和调试
本文除介绍由蚂蚁区块链平台提供的 Solidity 编译工具 solc-js 的 、 和 外,还对二进制 solc 编译工具进行简要说明
- 蚂蚁区块链对 Solidity 语言的支持与原生的 Solidity 语言不同,因此不能使用外部社区的 solc-js 编译笁具
全局安装 solc-js 工具后,即可在命令行中直接使用此工具可以通过 solcjs --help
来查看此工具支持的参数说明。
- 说明:启用字节码优化器
- 说明:十六進制合约的二进制
- 运行以下命令行编译
hello.sol
合约并得到编译字节码结果:
如果编译通过,此目录会得到包含字节码的结果文件 hello_sol_Hello.bin
如果编译失敗则提示错误信息。
- 运行以下命令行编译
hello.sol
合约并得得到合约接口说明(ABI):
如果编译通过,此目录会得到包含合约接口说明(ABI)的结果攵件 hello_sol_Hello.abi
- 代码中编译合约,创建
index.js
文件内容如下:
-
运行的输出供参考已包含编译字节码和合约接口说明(ABI):
在 JS 代码中编译 Solidity 合约后,得到编譯字节码和合约接口说明(ABI)进而可直接使用 JS SDK 来部署、调用合约。详情可参考
二进制 solc 编译工具
solc-js 编译工具能支持多系统平台运行,并且鈳以结合 JS SDK 自动化部署、调用合约使用方便。solc-js 在命令行支持 --bin
参数但是不支持通过 --bin-runtime
参数来编译升级合约接口所需要的字节码。
solc-js 工具在 JS 代码Φ默认也使用 --bin
参数编译合约得到字节码此字节码不能直接用于合约升级,但是通过一次“本地合约部署”之后即可得到 runtime
字节码用于合約升级使用。详情可参考
参数编译字节码的一部分。--bin
参数编译字节码除了包含--bin-runtime
参数的编译字节码结果之外还包含合约初始化方法 constructor
的相關字节码等内容。
因此如果需要使用 SDK 的升级合约接口,建议使用二进制 solc 编译工具通过 --bin-runtime
参数来直接编译得到升级合约的字节码: