以太坊。 gas * price + value 资金不足
Posted
技术标签:
【中文标题】以太坊。 gas * price + value 资金不足【英文标题】:Ethereum. Insufficient funds for gas * price + value 【发布时间】:2021-11-19 00:20:11 【问题描述】:在 rinkeby 成功测试后,我正在尝试部署智能合约以在主网上铸造 NFT。尝试部署到主网时出现以下错误:
ValueError:gas * price + value 资金不足
我正在使用 brownie 和 Infura,并尝试铸造 ERC-721 令牌。
如果有任何帮助,我将不胜感激!
这是我的控制台输出:
Brownie v1.16.2 - Python development framework for Ethereum
NftProject is the active project.
Running 'scripts/simple_collectible/deploy_simple.py::main'...
mainnet
File "/usr/local/lib/python3.8/dist-packages/brownie/_cli/run.py", line 49, in main
return_value, frame = run(
File "/usr/local/lib/python3.8/dist-packages/brownie/project/scripts.py", line 103, in run
return_value = f_locals[method_name](*args, **kwargs)
File "./scripts/simple_collectible/deploy_simple.py", line 10, in main
SimpleCollectible.deploy("from": dev, publish_source=publish_source)
File "/usr/local/lib/python3.8/dist-packages/brownie/network/contract.py", line 599, in __call__
return tx["from"].deploy(
File "/usr/local/lib/python3.8/dist-packages/brownie/network/account.py", line 508, in deploy
receipt, exc = self._make_transaction(
File "/usr/local/lib/python3.8/dist-packages/brownie/network/account.py", line 743, in _make_transaction
exc = VirtualMachineError(e)
File "/usr/local/lib/python3.8/dist-packages/brownie/exceptions.py", line 85, in __init__
raise ValueError(exc["message"]) from None
ValueError: insufficient funds for gas * price + value```
【问题讨论】:
【参考方案1】:部署智能合约时,我们需要 pay the gas
,因为部署是一个事务。所以,我们需要先向这个账户发送一些以太币。除非您的 Ropsten 测试网帐户上已经有一些 Ether,否则最简单的方法是在 Faucet 上请求一些测试 Ether。
转到Thinklair Ropsten Ether Faucet 网站并输入帐户地址(确保将地址值替换为您自己的),然后按“Send me test Ether”按钮。
或者,您也可以使用Ropsten faucet 将一些测试以太币发送到您的帐户。但是,在撰写此答案时(2022 年 1 月 3 日),这个水龙头似乎有一些延迟。
【讨论】:
【参考方案2】:你的钱包里有足够的 ETH 来支付 gas 费用吗? 如果您的钱包中没有足够的 ETH,则意味着您无法在脚本运行时支付 gas 费用。将一些 ETH 放入您的主网钱包中,这将解决此问题。
【讨论】:
以上是关于以太坊。 gas * price + value 资金不足的主要内容,如果未能解决你的问题,请参考以下文章
1分钟搞清Gas/ Gas Price/ Gas Limit