4

Eclipse に組み込まれている Java フォーマッターには、小さな、しかしやっかいなバグがあると思います。次のような Javadoc コメントがあります。

/**
 * - - - stuff - - - {@code mTasksBelow}.
 */

最後のピリオドは列 81 にあります。フォーマッタは、80 行目で Javadoc コメントをラップするように設定されています。残念ながら、コードをフォーマットすると、次のようになります。

/**
 * - - - stuff - - - {@code mTasksBelow}
 * .
 */

これにより、生成された出力のテキストとピリオドの間に空白が挿入されるため、たとえば Javadoc を HTML でレンダリングするブラウザーは、そこで改行しても問題ないと判断します。

ピリオドが Javadoc タグの後に続く場合を除き、これは発生しないようです。(たとえば、行が 81 桁目に閉じ括弧とピリオドで終わっている場合、最後の単語の前で正しく改行されます。)

ラップ列を移動できますが、それは問題を移動するだけです。Javadoc ソースを生成された出力と同じくらい読みやすくしたいので、改行をオフにしたくありません。不足している設定がありますか、それとも実際にはバグですか?

4

2 に答える 2

2

まあ、これにはあまり面白くない回避策があります。これを回避するには、Eclipse フォーマッターで Off/On タグを有効にしてみてください。

ウィンドウ -> 設定 -> Java -> フォーマッター -> 編集 -> Off/On タグ -> Off/On タグを有効にする

次に、コメントをこれらのタグで囲んで、フォーマッタが触れないようにする必要があります (タグは別のコメント ブロックにある必要があることに注意してください。そうしないと、Eclipse はそれらを無視します)。例:

//@formatter:off
/**
 * Oddly formatted comment.              MUHAHAHAHAH :)
 **/
//@formatter:on

Presto...フォーマッタはそれに触れません。Fedora 17 の Juno でテスト済みです。

于 2012-10-19T23:34:06.260 に答える
0

さて、これは新しいEclipse のバグです。Indigo の最初のリリースにはまだ存在することは明らかです。

于 2011-06-16T19:23:57.050 に答える