文章目录

  • 手把手教你区块链java开发智能合约nft-第一篇
  • 安装基础环境
  • 编写智能合约
  • 使用web3j 开源框架生成java代码

手把手教你区块链java开发智能合约nft-第一篇

刚接触区块链开发,使用java开发,真的是太难了,自己一步步摸索,从新手小白一路碰壁,动不动就报错,去网上搜索对应错误,还真什么都搜索不到,摸索了三四个月,今天终于有了一些进展,今天开始分享出来,希望能帮助到需要的朋友

我作为一个java后端的程序员,不会写智能合约,但是可以找对应会的人写,或者自己网上找资料自己写。这里只介绍怎么将智能合约转为java代码

如何将智能合约转成java代码?
我了解的有好2两种方式,具体可以参考:

  1. 区块链智能合约转为java代码
  2. web3j 开源框架代码执行转java代码

我这里主要介绍第二种方式

安装基础环境

  1. nodejs
  2. truffle #编译智能合约要使用

基础环境安装不多介绍,具体点击查看安装 nodejs 和truffle

编写智能合约

  1. 创建文件夹
mkdir MetaCoincd MetaCoin
  1. 下载(“unbox”) MetaCoin box
truffle unbox metacoin

下载完成后,会看到几个文件夹
contracts/: Solidity contracts 目录,智能合约代码就在这里编写
migrations/: Directory for scriptable deployment files
test/: Directory for test files for testing your application and contracts 测试智能合约的目录,主要写测试用例
truffle.js: Truffle configuration file ,配置文件

  1. 编译智能合约
    自己编写完智能合约后,执行以下命令进行编译
truffle compile

编译完成后,会生成build目录,目录下会生成.json文件,这些json文件就是用来生成java代码的文件

使用web3j 开源框架生成java代码

  1. 下载源码
git clone https://github.com/web3j/web3j.git
  1. idea打开web3j

    idea打开后,会自动下载相关依赖包,下载完成,就可以运行相关的代码,生成java代码了

  2. 找到项目codegen
    找到项目并定位到具体类:org.web3j.codegen.TruffleJsonFunctionWrapperGenerator
    先运行一下main方法,之后在去配置运行参数

4.配置参数

  • 点击编辑配置
  • 配置参数

    参数格式如下:
org.web3j.codegen.TruffleJsonFunctionWrapperGenerator /path/to/<truffle-smart-contract-output>.json -o /path/to/src/main/java -p com.your.organisation.name

第一个参数:指定编译后的智能合约对应json串位置
第二个参数:-o 指定输入java代码的位置
第三个参数:生成java代码的位置
第四个参数:-p 指定生成java代码的包名
第五个参数:生成java代码的包名

配置完参数之后,点击OK确认保存

  1. 运行TruffleJsonFunctionWrapperGenerator ,就可以将智能合约生成java代码了