- - PR -
Antのjavacタスクでgenericsを使用するには
1
投稿者 | 投稿内容 | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-09-01 23:15
Ant1.6.5とJDK1.5.0_07でジェネリックスを使用したソースを
コンパイルしたいのですが、下記の通りコンパイルエラーが発生します。
上記エラーが発生したときのビルドファイルは以下の通りです。
同様に試したソースは以下の通りです。
そこでantのマニュアルを参考に以下の通りビルドファイルを修正しました。
すると以下の通りエラーになります。
javacコマンドを直接使用した場合は特にsourceオプションを指定しなくても コンパイルできますし、"-source 1.5"としてもエラーにはなりません。 Antのバグのようにも見えるのですが、ネットで調べても同じような問題を 見つけることが出来ませんでした。何か使い方に問題が有るのでしょうか? なお、OSはWindowsXPです。 | ||||||||||||||||||||
|
投稿日時: 2006-09-02 00:33
多分なのですが、パス設定がまずくて思っているものと異なるjavacが呼ばれているのではないでしょうか。
antのjavacエレメントボディ部に以下の設定を追加してバージョンを確認してみてください。
ちなみに、以下の環境で提示されたソースをコンパイルしたところ正常にコンパイルできました。 ・Ant1.6.5 ・JDK1.5.0_06 | ||||||||||||||||||||
|
投稿日時: 2006-09-02 12:02
調査してみました。
駄目な場合は教えていただいたオプションを指定しても ”[javac] javac: -version は無効なフラグです。” と言うことで、バージョン番号を確認することが出来ませんでした。 しかし、環境変数JAVACMDに指定していたj2sdk1.4.2のjava.exeを無効にすると 問題無くコンパイルすることが出来ました。 java.exeとjavac.exeは別物と考えていましたが、Antが1.4.2のJVMで 実行されていたと考えると、コンパイルが通らないのも説明が付きますね。 どうもありがとうございました。 |
1