当我尝试使用truffle进行迁移时,会出现以下错误消息:

Error: No network specified. Cannot determine current network.
    at Object.detect (/usr/local/lib/node_modules/truffle/build/cli.bundled.js:43157:23)
    at /usr/local/lib/node_modules/truffle/build/cli.bundled.js:200497:19
    at finished (/usr/local/lib/node_modules/truffle/build/cli.bundled.js:43085:9)
    at /usr/local/lib/node_modules/truffle/build/cli.bundled.js:198408:14
    at /usr/local/lib/node_modules/truffle/build/cli.bundled.js:68162:7
    at /usr/local/lib/node_modules/truffle/build/cli.bundled.js:163793:9
    at /usr/local/lib/node_modules/truffle/build/cli.bundled.js:160353:16
    at replenish (/usr/local/lib/node_modules/truffle/build/cli.bundled.js:160873:25)
    at iterateeCallback (/usr/local/lib/node_modules/truffle/build/cli.bundled.js:160863:17)
    at /usr/local/lib/node_modules/truffle/build/cli.bundled.js:160838:16

在OSX机器上,我使用的truffle版本是4.0.0,solidity版本是0.4.18。 在后台运行的TestRPC版本是v4.1.3。

原文地址

4 人回答 0

4 个回答
投票数
最旧发布
最近发布

回答发布于 2018-09-11 21:26:24

你需要确认一下有没有在truffle.js中配置网络。 对于上面提到的设置,它看起来应该像这样:

module.exports = {
   networks: {
   development: {
   host: "localhost",
   port: 8545,
   network_id: "*" // Match any network id
  }
 }
};
||
||

回答发布于 2018-09-11 21:26:23

我在truffle4.0.1也遇到了同样的问题。经过一些调查并从truffle团队得到建议后,我发现truffle 4.0.x有一个新的选项。如果你运行truffle develop,你就不再需要testrpc了。由于truffle develop在端口9545上运行,你必须将你的truffle.js修改成这样:

networks: {
    development: {
          host: "localhost",
          port: 9545,
          network_id: "*" // Match any network id
    }
}

truffle 4.0.x还有其他一些很酷的新功能。我建议查看truffle 4.0.0的发行说明。它们可以在这里找到https://github.com/trufflesuite/truffle/releases/tag/v4.0.0 他们还建议升级到truffle 4.0.1。

我希望有所帮助

||
||

回答发布于 2018-09-11 21:26:22

如果你在使用旧配置文件时运行truffle migrate,可能会遇到这个错误,如下所示:

module.exports = {
    build: {
      "index.html": "index.html",
      "app.js": [
        "javascripts/app.js"
      ],
      "app.css": [
        "stylesheets/app.css"
      ],
      "images/": "images/"

    },
    rpc: {
      host: "localhost",
      port: 8545
    }
};

这个时候你需要使用这个配置:

module.exports = {
  networks: {
     development: {
     host: "localhost",
     port: 8545,
     network_id: "*" // Match any network id
   }
 }
};

你还可以使用多个环境developement live,使用network_id来指定区块链网络(mainnet或Ropsten ...),更多详细信息:

http://truffleframework.com/docs/advanced/configuration

希望这可以有所帮助。

||
||

回答发布于 2018-09-11 21:26:21

也许你可以指定网络:

你的truffle.js:

module.exports = {
  networks: {
    privateNode: {
      host: '127.0.0.1',
      port: 8501,               
      network_id: '*'
    },
    ganache: {
      host: "127.0.0.1",
      port: 7545,
      network_id: "*"
    }
  }
};

命令行指令:

truffle migrate --network ganache  //this can open only truffle.js and does not run the script

truffle.cmd migrate --network ganache //this would run script for 100%
||
||

回答发布于 2018-09-11 21:26:21

也许你可以指定网络:

你的truffle.js:

module.exports = {
  networks: {
    privateNode: {
      host: '127.0.0.1',
      port: 8501,               
      network_id: '*'
    },
    ganache: {
      host: "127.0.0.1",
      port: 7545,
      network_id: "*"
    }
  }
};

命令行指令:

truffle migrate --network ganache  //this can open only truffle.js and does not run the script

truffle.cmd migrate --network ganache //this would run script for 100%
||
||

回答发布于 2018-09-11 21:26:22

如果你在使用旧配置文件时运行truffle migrate,可能会遇到这个错误,如下所示:

module.exports = {
    build: {
      "index.html": "index.html",
      "app.js": [
        "javascripts/app.js"
      ],
      "app.css": [
        "stylesheets/app.css"
      ],
      "images/": "images/"

    },
    rpc: {
      host: "localhost",
      port: 8545
    }
};

这个时候你需要使用这个配置:

module.exports = {
  networks: {
     development: {
     host: "localhost",
     port: 8545,
     network_id: "*" // Match any network id
   }
 }
};

你还可以使用多个环境developement live,使用network_id来指定区块链网络(mainnet或Ropsten ...),更多详细信息:

http://truffleframework.com/docs/advanced/configuration

希望这可以有所帮助。

||
||

回答发布于 2018-09-11 21:26:23

我在truffle4.0.1也遇到了同样的问题。经过一些调查并从truffle团队得到建议后,我发现truffle 4.0.x有一个新的选项。如果你运行truffle develop,你就不再需要testrpc了。由于truffle develop在端口9545上运行,你必须将你的truffle.js修改成这样:

networks: {
    development: {
          host: "localhost",
          port: 9545,
          network_id: "*" // Match any network id
    }
}

truffle 4.0.x还有其他一些很酷的新功能。我建议查看truffle 4.0.0的发行说明。它们可以在这里找到https://github.com/trufflesuite/truffle/releases/tag/v4.0.0 他们还建议升级到truffle 4.0.1。

我希望有所帮助

||
||

回答发布于 2018-09-11 21:26:24

你需要确认一下有没有在truffle.js中配置网络。 对于上面提到的设置,它看起来应该像这样:

module.exports = {
   networks: {
   development: {
   host: "localhost",
   port: 8545,
   network_id: "*" // Match any network id
  }
 }
};
||
||

回答发布于 2018-09-11 21:26:24

你需要确认一下有没有在truffle.js中配置网络。 对于上面提到的设置,它看起来应该像这样:

module.exports = {
   networks: {
   development: {
   host: "localhost",
   port: 8545,
   network_id: "*" // Match any network id
  }
 }
};
||
||

回答发布于 2018-09-11 21:26:23

我在truffle4.0.1也遇到了同样的问题。经过一些调查并从truffle团队得到建议后,我发现truffle 4.0.x有一个新的选项。如果你运行truffle develop,你就不再需要testrpc了。由于truffle develop在端口9545上运行,你必须将你的truffle.js修改成这样:

networks: {
    development: {
          host: "localhost",
          port: 9545,
          network_id: "*" // Match any network id
    }
}

truffle 4.0.x还有其他一些很酷的新功能。我建议查看truffle 4.0.0的发行说明。它们可以在这里找到https://github.com/trufflesuite/truffle/releases/tag/v4.0.0 他们还建议升级到truffle 4.0.1。

我希望有所帮助

||
||

回答发布于 2018-09-11 21:26:22

如果你在使用旧配置文件时运行truffle migrate,可能会遇到这个错误,如下所示:

module.exports = {
    build: {
      "index.html": "index.html",
      "app.js": [
        "javascripts/app.js"
      ],
      "app.css": [
        "stylesheets/app.css"
      ],
      "images/": "images/"

    },
    rpc: {
      host: "localhost",
      port: 8545
    }
};

这个时候你需要使用这个配置:

module.exports = {
  networks: {
     development: {
     host: "localhost",
     port: 8545,
     network_id: "*" // Match any network id
   }
 }
};

你还可以使用多个环境developement live,使用network_id来指定区块链网络(mainnet或Ropsten ...),更多详细信息:

http://truffleframework.com/docs/advanced/configuration

希望这可以有所帮助。

||
||

回答发布于 2018-09-11 21:26:21

也许你可以指定网络:

你的truffle.js:

module.exports = {
  networks: {
    privateNode: {
      host: '127.0.0.1',
      port: 8501,               
      network_id: '*'
    },
    ganache: {
      host: "127.0.0.1",
      port: 7545,
      network_id: "*"
    }
  }
};

命令行指令:

truffle migrate --network ganache  //this can open only truffle.js and does not run the script

truffle.cmd migrate --network ganache //this would run script for 100%
||
||