首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么我的Greeter合同没有在测试网上被开采?

为什么我的Greeter合同没有在测试网上被开采?
EN

Ethereum用户
提问于 2016-06-13 19:06:39
回答 2查看 2.5K关注 0票数 5

我在写合同教程。下面是代码(包括合同):

代码语言:javascript
复制
var greeterSource = 'contract mortal { address owner; function mortal() { owner = msg.sender; } function kill() { if (msg.sender == owner) suicide(owner); } } contract greeter is mortal { string greeting; function greeter(string _greeting) public { greeting = _greeting; } function greet() constant returns (string) { return greeting; } }'

var greeterCompiled = web3.eth.compile.solidity(greeterSource)

var _greeting = "Hello World!"
var greeterContract = web3.eth.contract(greeterCompiled.greeter.info.abiDefinition);

var greeter = greeterContract.new(_greeting,{from:web3.eth.accounts[0], data: greeterCompiled.greeter.code, gas: 10000000000000}, function(e, contract){
  if(!e) {

    if(!contract.address) {
      console.log("Contract transaction send: TransactionHash: " + contract.transactionHash + " waiting to be mined...");

    } else {
      console.log("Contract mined! Address: " + contract.address);
      console.log(contract);
    }

  }
})

在最上面的一行,契约源代码是在没有中断行的情况下编写的。

我有4个乙醚用于测试网:

代码语言:javascript
复制
> eth.getBalance(eth.coinbase)
4000000000000000000

欢迎你再寄给我一些:

代码语言:javascript
复制
> eth.accounts
["0x425434d3a0f5da79d60769f2400896f0d85b41ec"]

geth-1.4.6控制台中,我使用

代码语言:javascript
复制
> loadScript("/home/work/projects/contracts/tutorial_greeter/setup_greeter.js")
true

编撰工作,但为何即使同时开采了多个区块,也没有地址呢?

代码语言:javascript
复制
> greeter
{
  abi: [{
      constant: false,
      inputs: [],
      name: "kill",
      outputs: [],
      type: "function"
  }, {
      constant: true,
      inputs: [],
      name: "greet",
      outputs: [{...}],
      type: "function"
  }, {
      inputs: [{...}],
      type: "constructor"
  }],
  address: undefined,
  transactionHash: null
EN

回答 2

Ethereum用户

发布于 2016-06-13 22:39:29

因为你没有加进去。

代码语言:javascript
复制
greeter.at("0xXXXXXXXX")

其中XXXX是显示在控制台中的地址。然后,迎接者将有一个地址。

如果您错过了控制台中的消息,仍然可以通过查询事务来检索它。如果你不知道交易地址,你应该检查帐户的地址。您可以在控制台或Testnet资源管理器( http://testnet.etherscan.io )上执行此操作。

票数 1
EN

Ethereum用户

发布于 2016-06-13 20:24:38

您需要同步testnet块链,并等待最后一个块才能看到您的事务。

看这里,https://testnet.etherscan.io

最后一个街区是1128505区。

您可以在geth客户端下键入eth.blockNumber,以查看您是否在此块附近。

尽情享受

比利M.

票数 0
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/5977

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档