松露错误:遇到错误,躲避。网络状态未知。手动查看成功的事务

时间:2017-11-01 00:56:32

标签: javascript ethereum solidity truffle web3

每当我尝试部署truffle migrate --reset我的Organization.sol合同时,我都会收到以下错误

Error encountered, bailing. Network state unknown. Review successful transactions manually.

我用Google搜索了错误,显然这是由合同规模造成的。我的Organization.sol甚至不是那么大;我之前见过更大的合同。

这是我的合同:https://github.com/ulixir/eth-task-contracts/blob/master/contracts/Organization.sol

任何线索?

2 个答案:

答案 0 :(得分:2)

您是否也看到此错误capture.txt出错?在这种情况下,您尝试使用的以太坊帐户可能没有足够的以太空来执行迁移 通过从geth控制台调用Error: insufficient funds for gas * price + value或使用genesis.json文件为帐户分配以太网,可以将以太币添加到帐户。您可以阅读更多相关信息here

如果您决定使用创世纪文件,请在将数据分配到以太坊帐户后执行以下步骤:
 1.使用miner.start()删除旧的geth数据库  2.使用修改后的genesis文件geth --datadir "<your datadir>" removedb重新初始化您的geth节点  3.在新节点的geth控制台中,确保启动矿工geth <your other params here> init <yourGenesisFile>

完成后,再次尝试迁移,现在应该可以正常工作。

如果您决定在不修改创世纪文件的情况下挖掘以太网,请开始挖掘并给您的以太网帐户一些时间来挖掘足够的以太。这需要多长时间?.......这取决于你在创世纪文件中设置的难度级别。

答案 1 :(得分:0)

使用此命令truffle migrate --reset时,它还将尝试与Organization.sol一起部署Migration.sol合同。您可以在迁移文件夹中看到迁移脚本。 错误Error encountered, bailing. Network state unknown. Review successful transactions manually.表示它无法确定已部署的合同。并告诉您进行手动检查。要检查已部署的合同,可以使用此命令truffle network