是否可以在genesis.json中预定义智能合约?

时间:2018-04-25 04:53:31

标签: blockchain ethereum solidity smartcontracts go-ethereum

我遇到了与此https://ethereum.stackexchange.com/questions/7707/is-it-possible-to-preload-contracts-in-the-genesis-block?rq=1

完全相同的问题

Agian,是否可以通过分配alloc来预定义合约 - >像这样的代码字段,

enter image description here

然而,似乎无论我在合同中使用哪种方法,它总是返回合约本身的字节码,无论此方法的逻辑和内容如何。

enter image description here

这可能是我签署合同的原因:

enter image description here

当我调用test()时,获取:

enter image description here 这不是一个字符串。

当我调用test2()时,获取:

enter image description here 这是一个非常大的数字。

当我调用test3(1)时,获取false, 这不是1 == 1.

我已经浏览了相关主题,发现了这个https://ethereum.stackexchange.com/questions/30366/how-does-the-genesis-json-file-define-the-initial-state-of-the-blockchain

看起来存储设置是必要的,但我完全不知道应该写什么键/值。

那我怎么能处理这个案子?

1 个答案:

答案 0 :(得分:5)

  

然而,似乎无论我在合同中使用哪种方法,它总是返回合约本身的字节码,无论此方法的逻辑和内容如何。

这听起来像是你从--bin

包含--bin-runtime而不是solc

您是如何生成要包含的code的?

--bin代码是在合同创建事务上运行的代码,它返回要包含在合同中的实际代码(--bin-runtime)。