web3j命令行工具

web3j的完全jar文件分发包对每一次发布都提供命令行工具。命令行允许你从终端(terminal)使用web3j的一些功能:

这些工具提供:

  • 钱包创建
  • 钱包密码管理
  • 从一个钱包转移到另一个钱包以太币
  • solidity智能合约封装包的产生

命令行工具可以从github项目存储库的releases页面下载zipfile/tarball包,或者通过源代码自己编译获得;OS X用户也可以通过HomebrewArch Linux用户可以通过AUR获得。

1
2
brew tap web3j/web3j
brew install web3j

要通过zipfile的使用的话,只需解压zipfile并运行命令:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
$ unzip web3j-<version>.zip
creating: web3j-3.0.0/lib/
inflating: web3j-3.0.0/lib/core-1.0.2-all.jar
creating: web3j-3.0.0/bin/
inflating: web3j-3.0.0/bin/web3j
inflating: web3j-3.0.0/bin/web3j.bat
$ ./web3j-<version>/bin/web3j

_ _____ _ _
| | |____ (_) (_)
__ _____| |__ / /_ _ ___
\ \ /\ / / _ \ '_ \ \ \ | | | / _ \
\ V V / __/ |_) |.___/ / | _ | || (_) |
\_/\_/ \___|_.__/ \____/| |(_)|_| \___/
_/ |
|__/

Usage: web3j version|wallet|solidity ...

web3j命令行工具作为钱包工具

生成一个新的以太坊钱包:

1
$ web3j wallet create

更新现有钱包的密码:

1
$ web3j wallet update <walletfile>

将以太币发送到另一个地址:

1
$ web3j wallet send <walletfile> 0x<address>|<ensName>

当把以太币Ether发送到另一个地址时,在交易发生之前,你会被问到一系列问题。见下面的完整示例:

下面的例子演示如何使用web3j发送以太币Ether到另一个钱包。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
$ ./web3j-<version>/bin/web3j wallet send <walletfile> 0x<address>|<ensName>

_ _____ _ _
| | |____ (_) (_)
__ _____| |__ / /_ _ ___
\ \ /\ / / _ \ '_ \ \ \ | | | / _ \
\ V V / __/ |_) |.___/ / | _ | || (_) |
\_/\_/ \___|_.__/ \____/| |(_)|_| \___/
_/ |
|__/

Please enter your existing wallet file password:
Wallet for address 0x19e03255f667bdfd50a32722df860b1eeaf4d635 loaded
Please confirm address of running Ethereum client you wish to send the transfer request to [http://localhost:8545/]:
Connected successfully to client: Geth/v1.4.18-stable-c72f5459/darwin/go1.7.3
What amound would you like to transfer (please enter a numeric value): 0.000001
Please specify the unit (ether, wei, ...) [ether]:
Please confim that you wish to transfer 0.000001 ether (1000000000000 wei) to address 0x9c98e381edc5fe1ac514935f3cc3edaa764cf004
Please type 'yes' to proceed: yes
Commencing transfer (this may take a few minutes)...................................................................................................................$

Funds have been successfully transferred from 0x19e03255f667bdfd50a32722df860b1eeaf4d635 to 0x9c98e381edc5fe1ac514935f3cc3edaa764cf004
Transaction hash: 0xb00afc5c2bb92a76d03e17bd3a0175b80609e877cb124c02d19000d529390530
Mined block number: 1849039

智能合约封装包

请参阅这篇文章智能合约封装包中的相关章节。

  • Web3j教程,主要介绍java和android app通过web3j进行区块链以太坊开发,适合java程序员。
  • 以太坊教程,主要介绍智能合约与dapp应用开发,适合入门。
  • 以太坊开发,主要是介绍使用node.js、mongodb、区块链、ipfs实现去中心化电商DApp实战,适合进阶。

汇智网原创翻译,转载请标明出处,官方原文org.web3j