EthereumJ是以太坊协议的纯Java实现。有关以太坊及其目标的高级信息,请访问ethereum.org,其 白皮书

提供了一个完整的概念的概述,和 黄皮书

一起提供了协议的正式定义。

我们尽可能保持EthereumJ简单。对于JSON-RPC支持和其他客户端功能,请看 Ethereum Harmony

运行EthereumJ

作为依赖项添加到Maven项目:

org.ethereum

ethereumj-core

1.8.1-RELEASE

或者你的Gradle项目:

repositories {

mavenCentral()

jcenter()

maven { url "https://dl.bintray.com/ethereum/maven/" }

}

compile "org.ethereum:ethereumj-core:1.8.+"

作为你项目的起点,任何一个项目都可以以下列方式启动:

git clone https://github.com/ether-camp/ethereumj.starter

./gradlew run

检查你的本地区块链如何同步使用:

curl -w "n" -X GET http://localhost:8080/bestBlock

构建可执行的JAR

git clone https://github.com/ethereum/ethereumj

cd ethereumj

cp ethereumj-core/src/main/resources/ethereumj.conf ethereumj-core/src/main/resources/user.conf

vim ethereumj-core/src/main/resources/user.conf # adjust user.conf to your needs

./gradlew clean fatJar

java -jar ethereumj-core/build/libs/ethereumj-core-*-all.jar

从命令行运行:

> git clone https://github.com/ethereum/ethereumj

> cd ethereumj

> ./gradlew run [-PmainClass=]

可以运行任意一个测试示例:

./gradlew run -PmainClass=org.ethereum.samples.BasicSample

./gradlew run -PmainClass=org.ethereum.samples.FollowAccount

./gradlew run -PmainClass=org.ethereum.samples.PendingStateSample

./gradlew run -PmainClass=org.ethereum.samples.PriceFeedSample

./gradlew run -PmainClass=org.ethereum.samples.PrivateMinerSample

./gradlew run -PmainClass=org.ethereum.samples.TestNetSample

./gradlew run -PmainClass=org.ethereum.samples.TransactionBomb

快照构建

请注意,快照不稳定,目前正在开发中!如果你还想尝试一下:

添加依赖项 org.ethereum:ethereumj-core:${VERSION}

, ${VERSION}

位置的值是 1.9.0-SNAPSHOT

示例如下:

jfrog-snapshots

oss.jfrog.org

https://oss.jfrog.org/libs-snapshot/

true

org.ethereum

ethereumj-core

1.9.0-SNAPSHOT

将项目导入IntelliJ IDEA:

> git clone https://github.com/ethereum/ethereumj

> cd ethereumj

> gradlew build

IDEA:

File -> New -> Project from existing sources……

选择 ethereumj/build.gradle

对话框“Import Project from gradle”:点击“ok”

在构建之后运行 org.ethereum.Start

, org.ethereum.samples.*

之一或创建自己的主程序。

配置EthereumJ

有关所有现有选项,其描述和默认值的参考,你可以参考默认配置 ethereumj.conf

(你可以在jar库或源代码 ethereum-core/src/main/resources

目录中找到它),要重新设置所需的选项,你可以使用以下方法之一:

/config/ethereumj.conf

user.conf

-Dethereumj.conf.file=

SystemProperties.CONFIG.override*()

SystemPropertiesbean

请注意,不需要将所有选项都放在自定义配置中,只需要放置你需要修改的那些选项。

如果你希望尽快的使用java开始以太坊的开发,可以选择web3j类库,它封装实现了绝大部分web3的功能,十分好用:

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

另外分享下之前其他语言的以太坊课程链接:

以太坊教程,主要介绍智能合约与dapp应用开发,适合入门。

以太坊开发,主要是介绍使用node.js、mongodb、区块链、ipfs实现去中心化电商DApp实战,适合进阶。

python以太坊,主要是针对python工程师使用web3.py进行区块链以太坊开发的详解。

php以太坊,主要是介绍使用php进行智能合约开发交互,进行账号创建、交易、转账、代币开发以及过滤器和事件等内容。

C#以太坊,主要讲解如何使用C#开发基于.Net的以太坊应用,包括账户管理、状态与交易、智能合约开发与交互、过滤器和事件等。

汇智网原创翻译,转载请标明出处。这里是 原文

以太坊java开发指南_java以太坊开发库ethereumj相关推荐

  1. 一本超越期待的 C++ 书——简评 Boost程序库完全开发指南 深入C++ 准 标准库

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 赖勇浩( ...

  2. Boost程序库完全开发指南——深入C++“准”标准库(第3版)

    内容简介  · · · · · · Boost 是一个功能强大.构造精巧.跨平台.开源并且完全免费的C++程序库,有着"C++'准'标准库"的美誉. Boost 由C++标准委员会 ...

  3. Python智能合约开发指南(以太坊+web3py)

    在以太坊上获得一个基本的智能合约是一个很简单的事,只需google查询"ERC20代币教程",你会发现有关如何做到这一点的大量信息.以编程方式与合约交互完全是另一回事,如果你是一个 ...

  4. java开发指南_Java 12新功能完整指南

    java开发指南 六个月飞得如此之快,是时候再次仔细研究一下即将发布的新JDK版本. 让我们满足Java 12及其向开发人员介绍的功能. 自Oracle推出加速六个月的发布节奏以来已经有一段时间了,要 ...

  5. java初学者指南_Java代理初学者指南

    java初学者指南 尽管Java初学者很快学会了键入public static void main来运行他们的应用程序,但是即使是经验丰富的开发人员也常常不知道JVM对Java流程的两个附加入口点的支 ...

  6. java 面试指南_Java面试参考指南–第1部分

    java 面试指南 JAVA面向对象的概念 Java in基于面向对象的概念,它允许更高级别的抽象以实际方式解决任何问题. 面向对象的方法将实际对象中的问题解决方案概念化,更易于在整个应用程序中重用. ...

  7. java 权威指南_Java 8:CompletableFuture权威指南

    java 权威指南 Java 8即将到来,因此该学习新功能了. 尽管Java 7和Java 6只是次要的发行版,但版本8将向前迈出一大步. 也许太大了? 今天,我将为您详细介绍JDK 8中的新抽象– ...

  8. java初学者指南_Java初学者指南

    java初学者指南 Java编程的第一步. 对于Java中的入门教程,请参阅Sun的官方帮助这里 除了核心语言外,还有几种技术和API 介绍. 我们建议首先阅读涵盖 基础知识,并继续其余的教程. 我们 ...

  9. 区块链开发指南_区块链开发权威指南

    区块链开发指南 by Haseeb Qureshi 由Haseeb Qureshi 区块链开发权威指南 (The authoritative guide to blockchain developme ...

最新文章

  1. php post请求后端拿不到值_php服务器能获取post请求的数值不能获取get请求的数值...
  2. POJ 1014 Dividing(多重背包 + 倍增优化)
  3. stk在计算机仿真中的应用_浅析仿真技术在激光系统设计中的应用
  4. 360修复导致服务器,桌面安装360软件修复漏洞补丁导致桌面TC端无法登陆,FC端VNC登陆一键修复显示HDC不可达...
  5. python输入逗号分隔_命令行Python逗号分隔的用户输入int值
  6. [机器学习-实践篇]学习之线性回归、岭回归、Lasso回归,tensorflow实现的线性回归
  7. java面试-JVM调优和参数配置
  8. 全网首发:怎样制作CDKEY(5)-让CDKEY更混乱
  9. 使用JFlash烧写boot教程
  10. android动画暂停,android – 暂停和恢复Lottie动画
  11. 必备24个宝藏工具,赶紧收藏,在家做自媒体8天收益4100
  12. 计算机管理员没有权限删除,答疑:没有管理员权限,无法删除文件?-删除文件...
  13. 键入一个字母,如果小写字母输出大写,大写字母输出小写字母
  14. html页面导出word文档
  15. PHP微信公众号登录获取openid信息
  16. 鲁棒局部均值分解 (RLMD)附Matlab代码
  17. 三大门户二十年,中国互联网踏上新征程
  18. C++基础知识点小结
  19. iPhone升级系统 死机了怎么办
  20. java图形界面计算器_java图形界面 计算器实现

热门文章

  1. 苏中建设集团入围2022年度全球超级用户大奖
  2. 2021年12月20日 编程
  3. [Wiki].NET框架
  4. 学习C语言前必看!!(学习C Primer Plus笔记一)
  5. matlab实现 中值滤波去除基线漂移,快速中值滤波在滤除心电信号基线漂移中的应用...
  6. 火源计划软件测试,科幻RPG射击新游《火源计划》今日首测 版本揭秘
  7. 阴阳师同服务器不同系统,阴阳师跨系统转角色怎么转?跨系统转介绍服务介绍!...
  8. Linux 命令神器:lsof
  9. python更新版本会丢失库吗_Python卸载后,随之的第三方库会消失吗
  10. 解决 重定向次数过多 尝试清除cookie 的问题