Ubuntu系统下以太坊开发环境配置与Web3.js安装完整教程

博主:neragonerago 2026-10-02 07:48:19 5

随着区块链技术的快速发展,以太坊作为最受欢迎的智能合约平台之一,吸引了大量开发者,要在本地搭建以太坊开发环境,Ubuntu凭借其开源、稳定、对开发者友好的特性,成为首选的操作系统,本文将详细介绍如何在Ubuntu系统上配置以太坊开发环境,并安装Web3.js库,帮助开发者快速入门区块链DApp开发。

Ubuntu系统下以太坊开发环境配置与Web3.js安装完整教程

系统准备

在开始之前,建议使用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');
}

常见问题及解决方案

  1. 权限错误(EACCES):避免使用sudo npm install,建议配置npm全局安装目录或使用nvm管理Node.js。

  2. 网络连接超时:国内用户可切换npm镜像源:

    npm config set registry https://registry.npmmirror.com
  3. Geth同步缓慢:主网全节点同步需要大量磁盘空间和时间,开发阶段建议使用测试网络(Sepolia)或远程节点服务。

本文完整介绍了在Ubuntu系统上配置以太坊开发环境的流程,包括安装Node.js、Web3.js库以及Geth客户端,完成这些配置后,你就可以开始开发去中心化应用(DApp)、编写与智能合约交互的脚本了,建议初学者先从连接测试网络开始,熟悉Web3.js的API后再深入智能合约开发,区块链世界的大门已经为你打开,祝开发顺利!

The End

发布于:2026-10-02,除非注明,否则均为区块链社区- 欧亿APP下载原创文章,转载请注明出处。