固体迁移合同空转与实际

时间:2018-09-13 11:20:38

标签: deployment ethereum smartcontracts truffle

摘要:使用松露通过infura部署到rinkeby。

我刚刚进行了众筹,这似乎成功了。但是,松露并未显示给我令人担忧的合同地址。我注意到Migrations dry-run (simulation)位于顶部,这使我想知道它是否尚未部署,仅对其进行测试……这是问题吗?我如何才能真正部署它?

3 个答案:

答案 0 :(得分:3)

好的,因为这很难调试,我有一个答案可能会对其他人有所帮助。

  1. 使用最新的边缘松露,通过警告我被告知要使用1.0.0-web3one.0版的truffle-hdwallet-provider
  2. 安装该软件后,我就可以通过模拟了。在迁移到rinkeby /实时网络时,将在实际部署之前尝试进行模拟。似乎什么地方都没有记录下来,而且在完成仿真后松露就挂了,这真是令人费解。...
  3. 尽管现在似乎很明显,但是如果有任何与时间相关的代码(例如,开始众筹的时间),则需要在未来几分钟内进行部署。使用ganache时不是很明显-我有20秒的时间,但是到了可以部署的时间,现在已经过去了,导致我的合同被撤消了。

我在新的以太坊工具1.0版本和松露测试版方面取得了不错的进步,如果我有帮助,请大声喊叫!

答案 1 :(得分:1)

请尝试将其放入“网络”部分,该选项为 skipDryRun: true

module.exports = {

  networks: {
    ...

    ropsten:{
     provider: () => new HDWalletProvider(mnemonics, endpoint),
     network_id: 3,
     gas: 5000000,
     confirmation: 2, 
     timeoutBlocks: 200,
     skipDryRun: true
    },
    ...
  }
}

答案 2 :(得分:-1)

您可以使用Etherlime部署智能合约。实际上,您可以使用它代替松露。它更简单,并且包含更多信息。我认为是更好的工具。它基于ethersjs,比web3js更好。这是指向documentation

的链接