エラー内容
smart contract を利用したプロジェクト開発の際に、
> npx hardhat test
と行ったとき、
TypeError: Cannot read properties of undefined (reading 'JsonRpcProvider')
から始まるエラーが出る。
解決策
2024年1月現在、ether.js
のversion6以降はNodeJS上で正しく動作しない。
これについて議論された2023年2月の記事があるが、どうやらまだ修正には至っていないようだ。
ether.js
のdocsを見る限り、最も安定したバージョンは5.7.2
のようだ。というわけで、
> npm install ethers@5.7.2 --save
を実行すると、見事にエラーが消えた。