微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

如何解决为什么不可能使用 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 举报,一经查实,本站将立刻删除。