2012-04-12 18 views
0

私はnetbeans IDEでjavaを使用しており、出力ウィンドウにデバッグしようとしています。私のログは、例外を除いて実行時に出力ウィンドウに出力されます。例外はコードの実行時に先に出力される傾向があります。出力の例を次に示します。Javaデバッグ - 例外の同時実行

19:45:53.266:私たちが過去の開始点であるかどうかを確認する 19:45:53.267:SortRequestIdListのエラーです。例外= [Ljava.lang.Object; [Ljava.lang.String;にキャストすることはできません。 19:45:53.266:出発点を過ぎています。範囲を基準にしたポジションを確認するためのチェック 19:45:53.266:我々は下限を下回っています。 RunnerBelowの実行について 19:45:53.267:ListLexでエラーが発生しました。例外= nullの 19:45:53.266:* がRunnerBelow を入力*

ので、例外は '事前に' 印刷されています。 (イベントAがイベントBより前に実行される)=>(イベントBの前にAのデバッグ出力が表示される)これらの印刷を制御できる方法はありますか?

皆さん、ありがとうございました!他のすべての出力のために、あなたはおそらくSystem.outを使用しながら、クリス

答えて

1

printStackTrace

は、System.errを使用しています。コード内にSystem.err.println(単純な解決法)を使用するか、例外を受け入れ、スタックトレースをSystem.out(かなり難しい)に印刷するメソッドを作成します。

2

通常、例外はSystem.errを使用して出力され、通常のデバッグメッセージはSystem.outに書き込まれます。 2つの異なるストリームを使用して出力を作成するため、例外の前に発生したデバッグメッセージの前に例外が書き込まれることがあります。

メッセージを生成するコードを変更できる場合は、出力をcatchブロックのSystem.outに追加することをお勧めします。 (あなたはSystem.out.println(e.getMessage())を使うことができます)。これが不可能な場合は、関連するデバッグメッセージをSystem.errに出力することができます。

+0

ああ、感謝します。私はSystem.errの使用を取り除くことができますが、それらは赤で出力を強調表示するので便利ですが、他のすべては黒です。出力テキストの色を選択する方法はありますか?ありがとう! - 追加:私はhttp://www.diogonunes.com/it/work/jcdp/で遊びに行くつもりです) –

+0

JCDPは有望に見えますが、これまでに聞いたことはありません。 NetBeansコンソールで動作するかどうかはわかりませんが。それ以外のSystem.err出力のカラーリングはIDEによって行われますが、NetBeansの経験はありませんので、出力の色を変更できるかどうかはわかりませんが、プロパティそこ。 – pushy

+0

PS - JCDPサイトは最新のJANSI jarファイルをダウンロードして提供していますが、JANSI開発者はメソッドを変更しているため、JCDPと互換性がありません。 JCDPを使用したい場合は、http://jansi.fuseource.org/download.htmlにアクセスし、JANSIの以前のバージョンをダウンロードしてください(私はちょうど1.0を試してみました。) –

関連する問題