千家信息网

怎么基于solidity智能合约文件创建java类

发表于:2025-01-23 作者:千家信息网编辑
千家信息网最后更新 2025年01月23日,这篇文章主要介绍"怎么基于solidity智能合约文件创建java类",在日常操作中,相信很多人在怎么基于solidity智能合约文件创建java类问题上存在疑惑,小编查阅了各式资料,整理出简单好用的
千家信息网最后更新 2025年01月23日怎么基于solidity智能合约文件创建java类

这篇文章主要介绍"怎么基于solidity智能合约文件创建java类",在日常操作中,相信很多人在怎么基于solidity智能合约文件创建java类问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"怎么基于solidity智能合约文件创建java类"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

用法

插件的基本配置将从src/main/resources获取solidity文件,并将java类生成到src/main/java文件夹中。

                        org.web3j            web3j-maven-plugin            0.3.7                                                    

运行插件执行目标generate-sources

mvn web3j:generate-sources

配置

有几个变量用于选择solidity源文件,定义源目标路径或更改包名称。

outputDirectory的配置优先于sourceDestination

入门

创建一个标准的java maven项目。将以下配置添加到pom.xml文件中:

    org.web3j    web3j-maven-plugin    0.3.7            com.zuehlke.blockchain.model        src/main/java/generated        true        java,bin                    src/main/resources                            **/*.sol                                        src/java/generated            src/bin/generated            src/abi/generated            

将你的Solidity合约文件添加到文件夹src/main/resources中。确保solidity文件以.sol结尾。

开始生成过程:

> mvn web3j:generate-sources[INFO] --- web3j-maven-plugin:0.1.2:generate-sources (default-cli) @ hotel-showcase ---[INFO] process 'HotelShowCaseProxy.sol'[INFO]     Built Class for contract 'HotelShowCaseProxy'[INFO]     Built Class for contract 'HotelShowCaseV2'[INFO]     Built Class for contract 'Owned'[INFO] ------------------------------------------------------------------------[INFO] BUILD SUCCESS[INFO] ------------------------------------------------------------------------[INFO] Total time: 4.681 s[INFO] Finished at: 2017-06-13T07:07:04+02:00[INFO] Final Memory: 14M/187M[INFO] ------------------------------------------------------------------------Process finished with exit code 0

你可以在目录src/main/java/generated/中找到生成的java类。

下一步是与智能合约进行交互。请参阅web3j主页中文版的智能合约部署和交互。

有关多模块项目配置,请参阅@fcorneli的帖子。简而言之:要获取生成的java源文件,需要build-helper-maven-plugin配置。此外,多模块项目中需要${basedir}前缀。

安利2个java以太坊、比特币区块链相关的交互式在线编程实战教程:

  • java以太坊开发教程,主要是针对java和android程序员进行区块链以太坊开发的web3j详解。

  • java比特币开发教程,本课程面向初学者,内容即涵盖比特币的核心概念,例如区块链存储、去中心化共识机制、密钥与脚本、交易与UTXO等,同时也详细讲解如何在Java代码中集成比特币支持功能,例如创建地址、管理钱包、构造裸交易等,是Java工程师不可多得的比特币开发学习课程。

到此,关于"怎么基于solidity智能合约文件创建java类"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

0