Mac搭建Hardhat以太坊开发环境
2025-09-30 13:06:31
# Web3
Node环境配置
首先安装nvm,再安装node18,为了和hardhat的运行环境匹配
1 | brew install nvm |
配置nvm环境,在~/.zshrc中加入下面的内容。
编辑~/.zshrc,如下:
1 | vim ~/.zshrc |
加入
1 | export NVM_DIR="$HOME/.nvm" |
保存,并
1 | source ~/.zshrc |
配置好后,如下:

接下来,安装node18,使用下面命令:
1 | nvm install 18 |
如下,安装成功。

搭建hardhat环境
创建一个目录,专门用于以太坊学习,随意,如/Web3
1 | cd /Web3 |
然后初始化hardhat项目
1 | npx hardhat |
选择第一个创建一个JavaScript project,项目路径选择刚开始创建文件夹的路径。
注意⚠️我这里是换了一个路径演示一下。

初始化后的文件目录如下:

其中的scripts文件夹需要自己创建。
部署智能合约
进入到文件夹contracts下,创建合约文件SimpleStorage.sol,简单的部署一个合约,如下:
1 | // SPDX-License-Identifier: MIT |
然后进入到创建的scripts文件夹下,创建部署合约的脚本deploy.js
1 | const hre = require("hardhat"); |
首先需要对编写的智能合约进行编译
1 | npx hardhat compile |
编译成功后,会输出Compiled 2 Solidity files successfully (evm target: paris)
然后启动本地的以太坊网络,如下:
1 | npx hardhat node |

以太坊网络启动成功。
进行合约的部署,执行部署的js文件如下:
1 | npx hardhat run scripts/deploy.js --network localhost |

合约成功部署,得到部署合约的地址0x5fbdb2315678afecb367f032d93f642f64180aa3。
调用合约函数
创建一个调用合约的代码test.js,如下:
1 | // scripts/test.js |
将其保存在scripts文件夹下。
代码的大致意思是,调用合约的set函数方法,设置值为42,然后再调用get方法去读取数据。
先是调用set方法,如图所示:
1 | npx hardhat run scripts/test.js --network localhost |

然后再调用get方法,获取set的值。
