0

我有一个代码可以在我的命令行java工具中按预期正常工作。

当我添加到 Eclipse 时,相同的代码确实会引发一些错误:

Exception in thread "main" java.lang.Error: Unresolved compilation problem: 
    Cannot cast from Object to long

在线上 :

    long statusId = (long)json.get("status_id");

但是,使用javacjava命令我运行程序并成功输出。

WTH eclipse 就是这样表现的!这是我的第一个 Eclipse 程序,请帮助我。

编辑:

代码 :

public InitOrderResponse connect()
{
    Authentication auth = new Authentication();

    String response = auth.httpBasicAuth(this.constructUrl(),this.key);


    JSONObject json = (JSONObject) JSONValue.parse(response);

    String merchantId = (String)json.get("merchant_id");
    long statusId = (long)json.get("status_id");
    String status = (String)json.get("status");
    String orderId = (String)json.get("order_id");

    initOrderResponse = new InitOrderResponse();
    initOrderResponse.setStatus(status);
    initOrderResponse.setOrderId(orderId);
    initOrderResponse.setStatusId(statusId);
    initOrderResponse.setMerchantId(merchantId);

    return initOrderResponse;
}
4

2 回答 2

0

您的 Eclipse 设置了错误/警告约束以在某些情况下给出错误,默认情况下 Java 编译器不会强加。要更改这些规则,请右键单击项目,单击属性。在“Java 编译器”菜单下,转到“错误/警告”。在那里,您可以为编译器设置约束以给出错误/警告。

于 2012-12-05T12:57:07.807 回答
0

问题出在 Jdk 版本上。当我将 jdk 更改为指向 Sun 的 JDK 时。一切都按预期工作。

于 2012-12-07T10:42:54.273 回答