当前位置:   article > 正文

Java实现Tron(波场)区块链的开发实践(一)环境搭建及简单实现_java集成tron

java集成tron

最近在开发区块链相关项目时,因本人一直使用JAVA做开发语言,但是区块链开发对JAVA语言相对来说不是很友好。在开发过程中遇到很多的问题,甚至通过百度、Google都无法解决,官方文档大部分篇幅在介绍接口相关信息,对Java实现不多。

可是为了赚点钱,也是硬着头皮,经过重重问题和反复摸索,终于搞定了Torn区块链相关需求的开发。

第一篇我们来讲如何在maven环境下,搭建Tron区块链的开发环境

申明:本实践经过自己实现,App产品已上线应用,可放心食用。

1. GITHUB获取组件

由于相关的mavn组件并没有上maven库,所以相关组件需要自己编译和下载

获取链接:tronprotocol/trident (github.com)

将组件原代码clone到本地,确认本地已经安装配置好Gradle 6.9.4,进行打包并将打好的组件包,置入项目工程内。

Gradle获取链接:https://services.gradle.org/distributions/gradle-6.9.4-all.zip

clone项目

gradle编译获取组件包并置入置入项目

maven配置

  1. <dependency>
  2. <groupId>org.tron.trident</groupId>
  3. <artifactId>abi</artifactId>
  4. <version>0.3.0</version>
  5. <scope>system</scope>
  6. <systemPath>${project.basedir}/libs/abi-0.3.0.jar</systemPath>
  7. </dependency>
  8. <dependency>
  9. <groupId>org.tron.trident</groupId>
  10. <artifactId>utils</artifactId>
  11. <version>0.3.0</version>
  12. <scope>system</scope>
  13. <systemPath>${project.basedir}/libs/utils-0.3.0.jar</systemPath>
  14. </dependency>
  15. <dependency>
  16. <groupId>org.tron.trident</groupId>
  17. <artifactId>core</artifactId>
  18. <version>0.3.0</version>
  19. <scope>system</scope>
  20. <systemPath>${project.basedir}/libs/core-0.3.0.jar</systemPath>
  21. </dependency>
  22. <dependency>
  23. <groupId>com.luhuiguo.grpc</groupId>
  24. <artifactId>grpc-netty-shaded</artifactId>
  25. <version>1.43.2.GM</version>
  26. </dependency>

2. 简单代码实现验证

* 通过rpc进行链接

  1. /**
  2. * 获取rpc api链接,方法内置了主网和测试网的连接,也可以通过自建节点进行配置
  3. * @param hexPrivateKey 私钥
  4. */
  5. private ApiWrapper getApiWrapper(String hexPrivateKey) {
  6. if (tronServiceConfig.getTronDomainOnline()) {
  7. return ApiWrapper.ofMainnet(hexPrivateKey, tronServiceConfig.getApiKey());
  8. } else {
  9. return new ApiWrapper("grpc.nile.trongrid.io:50051", "grpc.nile.trongrid.io:50061", hexPrivateKey);
  10. }
  11. }

* 创建离线地址

  1. /**
  2. * 创建地址(离线)
  3. */
  4. @Override
  5. public Map<String, String> createAddress() {
  6. KeyPair keyPair = KeyPair.generate();
  7. String privateKey = keyPair.toPrivateKey();
  8. String base58CheckAddress = keyPair.toBase58CheckAddress();
  9. String publicKey = keyPair.toPublicKey();
  10. Map<String, String> stringMap = new HashMap<>();
  11. stringMap.put("address", base58CheckAddress);
  12. stringMap.put("privateKey", privateKey);
  13. stringMap.put("publicKey", publicKey);
  14. return stringMap;
  15. }

DEMO:下载地址

https://download.csdn.net/download/t610654893/89003368?spm=1001.2014.3001.5503

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/608396
推荐阅读
相关标签
  

闽ICP备14008679号