2009-08-25 7 views
2

アプリケーションでは、いくつかのメンバー変数とメソッドを持つクラスがあります。悪いパラメータを持つメソッドを呼び出すと、AssertionErrorが生成されます。私は、キャッチされていない例外を停止するようにデバッガをセットアップしました。EclipseのJavaクラスインスタンス変数値の検査

問題は、デバッグパースペクティブに切り替えると、(関数が呼び出された)クラスインスタンスと2つのパラメータしか見ることができません。クラスインスタンスを拡張してメンバー変数の値を見ることはできません。インスタンスの左側にスペースがあるので、矢印があるはずなので、アウトラインと同様の方法で展開することができます。

これを有効にする必要がある設定や何かがありますか?または私は変数のウィンドウを誤解していますか?

これは重要なことですが、これはUbuntu LinuxのEclipse 3.2.2です。


[更新] は、私は今 ":20090619から0625 IDを構築する" 報告 "のEclipseについて"

http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/galileo/R/eclipse-java-galileo-linux-gtk.tar.gzから新しいリリースをダウンロードしました。

テストケース:明らか

class Foo { 
    private int bar; 

    Foo() { 
     bar = 1; 
    } 

    public void set(int newbar) { 
     assert (newbar<0); 
     bar = newbar; 
    } 
} 

class Test { 

    public static void main (String[] args){ 
     Foo f = new Foo(); 
     f.set(5); 
    } 
} 

、このコードはアサーション例外を生成します。しかし、唯一の変更は、新しいバージョンの緑色の円から青い三角形に変わった "this"のアイコンです。まだそれを拡大する方法を見つけることができません。ここではFooインスタンスの "this"と "newbar"とその値を明確にするために、 "this"を展開して "bar"の現在の値を表示したいと思っています。

答えて

2

#eclipseで議論したところ、VMが問題であることがわかりました。私は走っていた:

/usr/lib/jvm/java-1.5.0-gcj-4.3-1.5.0.0/bin/java 

にそれを変更する:

/usr/lib/jvm/java-6-openjdk/bin/java 

とVMへの引数は、私がbarの値を検査するクラスのインスタンスを展開してみましょうとして-ea旗を補給します。問題が解決しました。

+1

ああ、はい、UbuntuはデフォルトでGNU JVMを使用しますが、これはSun JVMとまったく同じではありません。それでも、Eclipseはまったく動いているのは驚くべきことです。 – sleske

2

いいえ、あなたはありません。通常、デバッグビューの最初の行は、現在実行中のインスタンスを表すエントリ "this"でなければなりません。インスタンス変数のリストを展開するためにクリックする "+"が必要です。

これがうまくいかない場合は、間違ったスタックフレーム(スタックトレースリストで選択できます)またはEclipseがソースコードの場所を解決できないなど、何か問題があります。

これが再現可能な小さなテストケースを作成して投稿してみてください。次に、我々は見るでしょう...

BTW: Eclise 3.2.2はかなり古いです。問題が解決しない場合は、3.5へのアップグレードを検討してください。いくつかのEclipseバージョンを並行してインストールすることができます(ディレクトリに解凍するだけで済みます)ので、既存のインストールを壊す必要はありません。

+0

"this"が表示されていますが、その横に "+"が表示されず、展開できます。私はubuntusのパッケージリポジトリを介してEclipseをインストールし、悪いスタートは最新のバージョンに更新し、そこで再びテストします。 – Mizipzor

+0

Ubuntuリポジトリからインストールすることは悪い考えです。真剣に古い。 Eclipse.orgサイトから最新パッケージを入手してください。解凍して実行するだけで "インストール"する必要はありません。 http://www.eclipse.org/downloads/ – zvikico

+0

Eclipseが更新され、テストケースが追加されました。 – Mizipzor

関連する問題