1. 程式人生 > >Eclipse中使用Web3j開發以太坊應用

Eclipse中使用Web3j開發以太坊應用

在我們的web3j以太坊開發課程中,預置程式碼是在終端命令列使用gradle進行構建的。如果希望在熟悉的Eclipse中開發web3j以太坊應用,這個快速教程將告訴你如何進行配置。

我們將分為6個步驟來介紹如何在Eclipse中使用Gradle專案開發web3j以太坊應用:

  1. 安裝Gradle工具
  2. 安裝Eclipse的Gradle外掛
  3. 建立Gradle專案
  4. 配置Gradle專案
  5. 建立演示類程式碼
  6. 執行模擬器和演示程式碼

1、安裝Gradle

官網下載最新的
4.8.1版本
Gradle壓縮包,然後選擇一個目錄解壓,比如:d:\tool。 不需要配置環境變數,解壓即可。

注意:Gradle壓縮包內含一級gradle-4.8.1

目錄,因此最終的安裝目錄是:d:\tool\gradle-4.8.1

2、安裝Gradle外掛

最新Oxygen版的Eclipse已經預設集成了Gradle外掛,因此可以直接建立Gradle專案:

oxygen

如果需要手工安裝,點選選單[Help]-> [Eclipse Marketplace],然後搜尋gradle
選擇Buildship Gradle Integration 2.0安裝即可:

install gradle plugin

3、建立Gradle專案

選擇選單[New] -> [Project…],在彈出的嚮導對話方塊中選擇Gradle Project

gradle support

然後給專案起個名字,比如test:

gradle name

在專案選項頁,首先啟用Override workspace settings選項,以便填寫Gradle的安裝目錄,
比如我們之前安裝到d:\tool\gradle-4.8.1

gradle path

4、配置Gradle專案

開啟專案的build.gradle檔案,在dependencies中新增web3j和logback依賴,
同時新增maveCentral()倉庫:

plugins {
    id 'java-library'
}

dependencies {
    api 'org.apache.commons:commons-math3:3.6.1'
    implementation 'com.google.guava:guava:23.0'
testImplementation 'junit:junit:4.12' //新增web3j和logback依賴 compile 'org.web3j:core:3.3.0', 'ch.qos.logback:logback-core:1.2.3', 'ch.qos.logback:logback-classic:1.2.3' }
repositories { jcenter() //新增maven倉庫 mavenCentral() }

注意:在更新build.gradle檔案後,一定要執行一下手動重新整理,讓新的設定生效!

Package Explorer視窗中的專案名稱上點右鍵,然後點選[Gradle] -> [Refresh Gradle Project]

refresh gradle

5、建立一個新的類

建立一個新的類App,一切選用預設設定即可:

new class

然後修改App.java程式碼如下:

package test;

import org.web3j.protocol.Web3j;
import org.web3j.protocol.http.HttpService;

public class App {

    public static void main(String[] args) throws Exception {
        Web3j web3j = Web3j.build(new HttpService("http://localhost:8545"));
        String v = web3j.web3ClientVersion().send().getWeb3ClientVersion();
        System.out.println(v);
    }
}

6、執行

首先啟動你本地機器上的ganache-cli,如果是windows平臺,推薦使用我們的以太坊開發套件
Ethbox

ethbox ganache

然後點選[Run] -> [Run As] -> [Java Application]

run as

一切順利的話,你會在Eclipse的控制檯首先看到Gradle在下載依賴包,然後看到
你的程式碼執行的結果:

output

BINGO!

相關推薦

Eclipse使用Web3j開發應用

在我們的web3j以太坊開發課程中,預置程式碼是在終端命令列使用gradle進行構建的。如果希望在熟悉的Eclipse中開發web3j以太坊應用,這個快速教程將告訴你如何進行配置。 我們將分為6個步驟來介紹如何在Eclipse中使用Gradle專案開發web3

如何在Spring Boot開始web3j開發

通過Spring的依賴注入將web3j整合到Spring Boot應用程式中。此處提供了示例應用程式: package org.web3j.examples; import java.io.IOException; import org.apache.http.conn.HttpHostCo

web3j開發智能合約快速入門(特別適合java和android開發者)

latest struct name admin 套接字 信息 mes add decimal web3j簡介 web3j是一個輕量級、高度模塊化、響應式、類型安全的Java和Android類庫提供豐富API,用於處理以太坊智能合約及與以太坊網絡上的客戶端(節點)進行集成。

web3j教程:java使用web3j開發智慧合約交易

從廣義上講,有web3j支援三種類型的以太坊交易: 1.以太幣從一方交易到另一方 2.建立一個智慧合約 3.與智慧合約交易 為了進行這些交易,必須有以太幣(以太坊區塊鏈的代幣)存在於交易發生的以太坊賬戶中。這是為了支付gas成本,這是為支付參與交易的以太坊客戶端的交

java類庫web3j開發智慧合約快速入門

web3j簡介 web3j是一個輕量級、高度模組化、響應式、型別安全的Java和Android類庫提供豐富API,用於處理以太坊智慧合約及與以太坊網路上的客戶端(節點)進行整合。 可以通過它進行以太坊區塊鏈的開發,而無需為你的java應用平臺編寫整合程式碼。

web3.py是Python開發應用的利器

與web3.py庫互動的共同入口是web3物件。web3物件提供API,用於python開發的應用與以太坊區塊鏈進行互動,通常是通過連線JSON-RPC伺服器進行。 Providers提供者 Providers使web3連線到區塊鏈上。Web3.py庫帶有以下內建的pro

java開發應用的庫ethereumj

EthereumJ是以太坊協議的純Java實現。有關以太坊及其目標的高階資訊,請訪問ethereum.org,其白皮書提供了一個完整的概念的概述,和黃皮書一起提供了協議的正式定義。 我們儘可能保持EthereumJ簡單。對於JSON-RPC支援和其他客戶端功能

web3j開發過濾器(filter)和智慧合約事件(event)

web3j過濾器提供以太坊網路發生的某些事件的通知,對java和安卓程式設計師來說很有用。在Ethereum以太坊中支援三類過濾器: 塊濾波器(Block filters) 未決交易過濾器(Pending transaction filters) 主題過濾器(Topic

Android開發錢包生成應用程序

運行時 try super 取地址 save ras parent sel cte Android應用程序以太坊錢包生成,要做的工作不少,不過如果我們一步一步來應該也比較清楚: 1.在app/build.gradle中集成以下依賴項: compile (‘org.web3j

olidity語言開發智慧合約的繼承

我們已經探索了很多主題,在編寫智慧合約時我們發現經常使用相同的模式:例如,智慧合約具有在建構函式中設定的所有者,然後生成修改器以便僅讓所有者使用一些功能。如果我們制定實施這些功能的基礎合約並在未來的智慧合約中重複使用它們那該怎麼辦?你一定猜得到,我們將使用繼承。 在Solidity中,繼承與經典的面向物

java程式設計師使用web3j進行開發詳解

如何使用web3j為Java應用或Android App增加以太坊區塊鏈支援,教程內容即涉及以太坊中的核心概念,例如賬戶管理包括賬戶的建立、錢包建立、交易轉賬,交易與狀態、智慧合約開發與互動、過濾器和事件等,同時也詳細說明如何使用web3j提供的API開發介面與以太坊進行互動,是java工程師學習以

java如何在Spring Boot中用web3j開始開發智慧合約

通過Spring的依賴注入將web3j整合到Spring Boot應用程式中。此處提供了示例應用程式: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25

應用開發介面的配置與呼叫

以太坊應用開發介面指的是以太坊節點軟體提供的API介面,去中心化應用可以利用這個介面訪問以太坊上的智慧合約。以太坊應用開發介面採用JSON-PRC標準,通常是通過HTTP或websocket提供給應用程式呼叫。 JSON-RPC是一種無狀態輕量級遠端過程呼叫(RPC)協議,規範定義了

應用開發JSON-PRC介面

以太坊應用開發介面指的是以太坊節點軟體提供的API介面,去中心化應用可以利用這個介面訪問以太坊上的智慧合約。以太坊應用開發介面採用JSON-PRC標準,通常是通過HTTP或websocket提供給應用程式呼叫。 JSON-RPC是一種無狀態輕量級遠端過程呼叫(RPC)協議,規範定義了資料

solidity語言開發智慧合約的繼承

我們【天恆幸運飛艇原始碼下載】【征途原始碼論壇http://zhengtuwangluo.com】聯絡方式:QQ:2747044651已經探索了很多主題,在編寫智慧合約時我們發現經常使用相同的模式:例如,智慧合約具有在建構函式中設定的所有者,然後生成修改器以便僅

開發Web3j錢包功能的實現

public class App {    // GAS價格      public static BigInteger GAS_PRICE = BigInteger.valueOf(20_000_000_000L);      // GAS上限      public static BigInteger G

solidity開發代幣智能合約

以太坊 智能合約 solidity 代幣 開發 智能合約開發是以太坊編程的核心之一,而代幣是區塊鏈應用的關鍵環節,下面我們來用solidity語言開發一個代幣合約的實例,希望對大家有幫助。 以太坊的應用被稱為去中心化應用(DApp),DApp的開發主要包括兩大部分: 智能合約的開發 用戶

java開發過濾器(filter)和智能合約事件(event)

java web3j filter event 以太坊 ethereum 區塊鏈 智能合約 過濾器 事件 web3j過濾器提供以太坊網絡發生的某些事件的通知,對java和安卓程序員來說很有用。在Ethereum以太坊中支持三類過濾器:

F3D系統開發Fomo3D區塊鏈模式

inno 定制 dap 擁有 style 獎勵 開發 最終 理論 Fomo3D(F3D)以太坊ETH底層技術系統開發空氣-陳洋1 5 0 1*3 1 5 1*7 4 0電T微。現代經濟體系正在朝著分布式、點對點、網絡化的結構進行演化。分布式賬本技術吸收了現代密碼學、安全通訊

Python Flask如何開發智能合約

sting lar rto urn 設置 doc 教程 not [1] 將數據存儲在數據庫中是任何軟件應用程序不可或缺的一部分。無論如何控制該數據庫都有一個該數據的主控。區塊鏈技術將數據存儲到區塊鏈網絡內的區塊中。因此,只要某個節點與網絡同步,它們就會獲得區塊中數據的副本。