Javaアノテーション実験:package-infoがCygwinだとコンパイルエラー
J2SE 5.0(Tiger)から導入されたアノテーション、packageにもアノテーションを付加できますが、その際は"package-info.java"という名前でソースファイルを記述し、そこにアノテーションを記述します。
/** * 私のパッケージです(何のことだ)。 */ @MyAnnotation package mypackage;
しかし、なぜかTigerのjavacでコンパイルするとエラーになります。
$javac mypackage/package-info.java mypackage/package-info.java:5: パッケージの注釈はファイル package-info.java 内になければなりません。 @MyAnnotation ^ エラー 1 個 $
これは、BugID:6198196にあり、プラットフォーム固有のファイルセパレータ(Windows上なら\)を使用していない場合にエラーとなる問題です。Windows上でCygwinを使用しているときが該当します。
Mustang b40で解決されています。