1

このコードを考えると、なぜコンソールに出力されないのか、私は困惑しています。

    engine.compileTemplate(new PrintWriter(System.err));
    System.err.flush();

コンソールには何も表示されません。System.outでも同じ問題が発生します。そして、はい、ファイルに正常に出力することでコードが機能することを確認しました。

4

2 に答える 2

1

autoflushでコンストラクターを使用してみてください。PrintWriterではなくSystem.errをフラッシュしています。

于 2012-11-12T21:50:33.400 に答える
0

このコードはどのようなコンテキストで実行されますか?何が起こっているのかを判断するには、もっと多くの情報が本当に必要です。

デバッグしているプラ​​グインでコードを実行していますか?もしそうなら、「コンソールに出力」とは-プラグインと同じEclipseインスタンスのコンソールを意味しますか?

そのためには、次のようなことを行う必要があります。

MessageConsole console = new MessageConsole("My Console", null);
console.activate();
ConsolePlugin.getDefault().getConsoleManager().addConsoles(new IConsole[]{ console });
MessageConsoleStream consoleStream = console.newMessageStream();
consoleStream.println("Hello, world!");

それ以外の場合は、Eclipseが起動されたコンソールに移動します。

詳細はこちら:http ://wiki.eclipse.org/FAQ_How_do_I_write_to_the_console_from_a_plug-in%3F

于 2012-11-14T06:58:29.070 に答える