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プログラムです。親切に助けてください。

編集:

コード :

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

問題はJdkバージョンにありました。jdkをSunのJDKを指すように変更したとき。すべてが期待どおりに機能します。

于 2012-12-07T10:42:54.273 に答える
0

あなたのEclipseには、デフォルトでJavaコンパイラによって課されていない、いくつかの条件に対してエラーを与えるように設定されたエラー/警告制約があります。これらのルールを変更するには、プロジェクトを右クリックし、プロパティをクリックします。「Java Compiler」メニューの下で、「errors/warnings」に移動します。そこで、コンパイラに制約を設定してエラー/警告を出すことができます。

于 2012-12-05T12:57:07.807 に答える