我已经使用以下命令运行了ganache-cli:
$ ganache-cli --port 8545 --gasLimit 12000000 --accounts 10 --hardfork istanbul --mnemonic test我使用以下命令创建了一个松露项目:
$ truffle unbox react在contracts/SimpleStorage.sol中生成一个示例智能契约
我尝试使用以下命令在ganache上部署此合同:
$ truffle migrate我没有在块菌-config.js中配置任何HDWallet。
这很奇怪,但部署成功了!我想知道这怎么可能。合同部署的天然气费用由第一个ganache-cli帐户支付。我想知道他的怎么可能,因为松露不知道助记符和帐户私钥。
我只想明白
谢谢你的帮助。
发布于 2021-01-29 17:58:49
由于ganache拥有所有未锁定的帐户,所以松露使用getAccounts获取帐户,并在发送事务时使用第一个帐户。同样,油价也被称为getGasPrice。
松露从来不知道HDWallet。它假设它正在与ethereum客户端进行交谈。HDWallet钩住提供程序并拦截一些调用,以确保事务被签名并由getAccounts返回有效的帐户。
https://ethereum.stackexchange.com/questions/92885
复制相似问题