前回、VPS借りてubuntuを入れてtruffleをセットアップしてみましたが、今回は、Hardhat をインストールします。HardhatもEthereumソフトウェアの開発環境です。
Hardhatで使うディレクトをつくります。
mkdir hardhat-test
cd hardhat-test
Hardhatをインストール
npm install --save-dev hardhat
Hardhat実行します。Yで進んでいけば自動的に開発環境を構築してくれます。
npx hardhat
ここの url, chainIDをmetamaskに設定します。このあとチュートリアルのためにsolidityのバージョンを0.8.9に変更しておきます。
cat hardhat.config.js
require("@nomicfoundation/hardhat-toolbox");
/** @type import('hardhat/config').HardhatUserConfig */
module.exports = {
solidity: "0.8.9",
};
require("@nomiclabs/hardhat-waffle");
// This is a sample Hardhat task. To learn how to create your own go to
// https://hardhat.org/guides/create-task.html
task("accounts", "Prints the list of accounts", async (taskArgs, hre) => {
const accounts = await hre.ethers.getSigners();
for (const account of accounts) {
console.log(account.address);
}
});
// You need to export an object to set up your config
// Go to https://hardhat.org/config/ to learn more
// !!!!追加!!!!
const { privateKey } = require('./private.json');
/**
* @type import('hardhat/config').HardhatUserConfig
*/
module.exports = {
solidity: "0.8.9",
// !!!!追加!!!!
networks: {
localhost: {
url:"http://localhost:8545",
chainId:31337,
accounts: [privateKey],
}
}
};
You have both ethereum-waffle and @nomicfoundation/hardhat-chai-matchers installed. They don’t work correctly together, so please make sure you only use one.
We recommend you migrate to @nomicfoundation/hardhat-chai-matchers. Learn how to do it here: https://hardhat.org/migrate-from-waffle
sudo npm uninstall @nomiclabs/hardhat-waffle ethereum-waffle
sudo npm install --save-dev @nomicfoundation/hardhat-chai-matchers
vi hardhat.config.js
require("@nomicfoundation/hardhat-toolbox");
/** @type import('hardhat/config').HardhatUserConfig */
module.exports = {
solidity: "0.8.9",
};
require("@nomicfoundation/hardhat-chai-matchers");