Ubuntu系统下以太坊开发环境配置与Web3.js安装完整教程
随着区块链技术的快速发展,以太坊作为最受欢迎的智能合约平台之一,吸引了大量开发者,要在本地搭建以太坊开发环境,Ubuntu凭借其开源、稳定、对开发者友好的特性,成为首选的操作系统,本文将详细介绍如何在Ubuntu系统上配置以太坊开发环境,并安装Web3.js库,帮助开发者快速入门区块链DApp开发。
系统准备
在开始之前,建议使用Ubuntu 20.04 LTS或22.04 LTS版本,首先更新系统软件包:
sudo apt update sudo apt upgrade -y
同时安装一些必要的依赖工具:
sudo apt install -y curl git build-essential
安装Node.js和npm
Web3.js是基于JavaScript的库,因此需要先安装Node.js运行环境,Ubuntu官方源中的Node.js版本通常较旧,推荐使用NodeSource源安装最新LTS版本:
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash - sudo apt install -y nodejs
安装完成后,验证版本:
node -v npm -v
如果输出类似v18.x.x和x.x的版本号,说明安装成功。
提示: 也可以使用nvm(Node版本管理器)来管理多个Node.js版本,方便在不同项目间切换。
安装Web3.js
创建项目目录
mkdir ethereum-project cd ethereum-project npm init -y
安装web3库
npm install web3
验证安装
创建一个测试文件test.js:
const Web3 = require('web3');
console.log('Web3版本:', Web3.version);
运行:
node test.js
如果正确输出版本号,说明Web3.js安装成功。
安装以太坊客户端Geth(可选)
如果需要运行本地以太坊节点,可以安装官方客户端Geth:
sudo add-apt-repository -y ppa:ethereum/ethereum sudo apt update sudo apt install -y ethereum
验证安装:
geth version
启动一个开发测试网络:
geth --dev --http --http.api eth,web3,net --http.corsdomain '*'
Web3.js基本使用示例
连接以太坊网络
const Web3 = require('web3');
// 方式一:连接远程节点(如Infura)
const web3 = new Web3('https://mainnet.infura.io/v3/你的项目ID');
// 方式二:连接本地Geth节点
// const web3 = new Web3('http://127.0.0.1:8545');
查询最新区块高度
async function getLatestBlock() {
const blockNumber = await web3.eth.getBlockNumber();
console.log('最新区块高度:', blockNumber);
}
getLatestBlock();
查询账户余额
async function getBalance(address) {
const balance = await web3.eth.getBalance(address);
console.log('余额:', web3.utils.fromWei(balance, 'ether'), 'ETH');
}
常见问题及解决方案
-
权限错误(EACCES):避免使用
sudo npm install,建议配置npm全局安装目录或使用nvm管理Node.js。 -
网络连接超时:国内用户可切换npm镜像源:
npm config set registry https://registry.npmmirror.com
-
Geth同步缓慢:主网全节点同步需要大量磁盘空间和时间,开发阶段建议使用测试网络(Sepolia)或远程节点服务。
本文完整介绍了在Ubuntu系统上配置以太坊开发环境的流程,包括安装Node.js、Web3.js库以及Geth客户端,完成这些配置后,你就可以开始开发去中心化应用(DApp)、编写与智能合约交互的脚本了,建议初学者先从连接测试网络开始,熟悉Web3.js的API后再深入智能合约开发,区块链世界的大门已经为你打开,祝开发顺利!
发布于:2026-10-02,除非注明,否则均为原创文章,转载请注明出处。

