Error: VM Exceptionの解決

作成日

2018年11月16日

Metamask などで SUBMIT して実行したときに発生するエラーに関する超簡単な覚書です.

ケース1

Error: VM Exception while processing transaction: revert

例えば,Solidity 側で require() の条件を満たしていないときに発生します.

ケース2

Error: VM Exception while processing transaction: invalid opcode

例えば,存在しないものを呼び出そうとしているなど,JavaScript で書き方間違ってるときに発生します.

ケース3

Error: VM Exception while processing transaction: out of gas

コントラクトの実行の際,ガスが足りないときに発生します.設定しているガスの量を増やすか,Metamask 上で変更すると通ります.

また,コントラクト側で transfer 関数を用いていて,Web 側でこの関数を呼ぶときにガスの設定を入れ忘れても同様のエラーが発生します.ガスの設定は以下のようにして追加します.

contract.deposit(id, {gas: 300000})

mktia's note

Research & Engineering / Blockchain / Web Dev

© 2017-2025 mktia. All rights reserved.