- Published on
hardhat-etherscan: arguments errorの対処方法
hardhatとetherscanを使ってcontractをverifyする際に下記のようなエラーが出る場合があります。 この対処方法を紹介します。
example-contract git:(main) ✗ npx hardhat verify 0x51.......F1a --network rinkeby Nothing to compile Error in plugin @nomiclabs/hardhat-etherscan: The constructor for contracts/ExampleContract.sol:ExampleContract has 2 parameters but 0 arguments were provided instead.
これはEampleContract
はdeploy時、つまり、constructorで二つの引数を取っており、
それが指定されていないよということです。
そのため、deploy時に指定した値を、指定してあげれば良いのです。
慣習的にargument.jsというconstructorのパラーメターを入れて、それを使うやり方が主流です。
たとえば、deploy時に、exampleContract.deploy('hello', 10)
と指定していた場合には、
argument.jsを以下のようにします。
// argument.js module.exports = [ 'Hello', 10, ];
そして、これを指定してあげれば、うまくverifyさせることができます。
npx hardhat verify --constructor-args argument.js --network rinkeby 0x.5.....F1a