2016-03-27 41 views
-1

私はjarファイルを逆コンパイルし、すべてをeclipseにインポートしましたが、これらの本当に奇妙なエラーがたくさんあります。逆コンパイルされたコードは "定義される前にフィールドを参照できません"

Error

私はライン279上のエラー上にカーソルを移動すると、それはそれは非常に明確に行で定義されていても

を定義する前

がフィールドを参照することはできませんと言います私はたとえそれがコメントアウトされていても変数を解決できないと言うコメントに1つのエラーがあった。

+1

はどこファイル/ 2/3/4が宣言されていますか? –

+1

問題は、それらのファイルのすべてが値を割り当てる前に宣言されていない可能性が最も高いです。 –

+1

まあ、逆コンパイラは普通は完璧なものを得られません。だから、私が推測することに対処しなければならない事の一つです。 –

答えて

-1

Javaはコンパイル時にフィールドを順番に解析するため、フィールドを任意の順序で参照することはできません。あなたのコードスニペットはその問題を持っていないようですが、その原因となるファイルの後ろにフィールドが宣言されているとします。

時にはEclipseが同期しなくなることがあります。間違ったことが見当たらない場合は、refreshingプロジェクト、またはrebuildingを試してみてください。

+0

Downvoterは説明するように気をつけますか? – dimo414

0

これらのファイルはすべて、値を割り当てる前に宣言されていない可能性が高いです。

例えばfile = new File("params");は次のようになります。File file = new File("params");

+0

私は実際にもう少し調べましたが、ファイルはクラス内で適切に宣言されています。 – Zacx

+1

呼び出される前に宣言されなければ、エラーが発生します。 –

+0

しかし、それは意味をなさない、デコンパイラはただランダムにすべての宣言を選択し、別の場所に移動しましたか? – Zacx

関連する問題