为什么不可能使用 Truffle 部署智能合约到主网?

问题描述

为什么使用 Truffle 部署到主网如此困难?

这是尝试部署到主网的概述...

  1. 当前 Gasprice 为 110 Wei。因此110000000000 wei

让我们把它插入......

mainnet: {
      provider: () =>
        new HDWalletProvider({
          mnemonic: { phrase: process.env.MNEMONIC },providerOrUrl: process.env.RPC_URL_1_WSS,}),network_id: 1,from: process.env.DEPLOYERS_ADDRESS,gasPrice: 110000000000,/*  GAS PRICE!! */
      confirmations: 2,timeoutBlocks: 200,skipDryRun: false,public nets )
    },},
  1. 让我们估算一下部署的 gas 成本。这将在 gastruffle-config 参数中设置。

NODE_ENV=production truffle migrate --network mainnet --dry-run

Summary
=======
> Total deployments:   2
> Final cost:          0.001403824 ETH

0.001403824 ETH 是 2.04 美元。
所以这可能是错误的。

‼️FAIL‼️


  1. 第二次尝试。好的,试运行对于获得气体估计没有用。我将 gas 留空并尝试仅使用 gasPrice 进行部署。

结果... Message: insufficient funds for gas * price + value ‼️FAIL‼️

  1. 好的,因为 dry-run 没有对部署合同的成本给出有用的估计,我只是根据其他合同进行猜测。将在此处添加 gas 参数。
mainnet: {
      provider: () =>
        new HDWalletProvider({
          mnemonic: { phrase: process.env.MNEMONIC },/*  GAS PRICE!! */
      gas: 140000000000000000,/ That's about $200 in Wei/
      confirmations: 2,

RuntimeError: abort(Error: Assertion Failed). Build with -s ASSERTIONS=1 for more info.

‼️再次失败‼️


  1. 第三次尝试。好的,尝试将 gasgasPrice 留空..

Block timesout in 750 seconds

‼️FAIL‼️


尝试混音..

  1. 将提供程序设置为注入的 Web3
  2. 设置网络为主网
  3. 部署
  4. 花费 135 美元

这很棒,但现在我没有使用 Truffle 的迁移,而且使用 Remix ABI 和 Truffle 也不是那么容易。

我真的很喜欢 Truffle 来工作。

为什么在部署到主网时 Truffle 很难使用?无法部署到主网。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)