2010年8月24日火曜日

クラスパスワイルドカードを用いたjavacコマンドでのトラブル

Cygwin上でjavacコマンドを実行する際にクラスパスワイルドカードを使うとコンパイルできないというトラブルにあいました.コマンドラインに入力した内容は次のようなものです.

javac -cp "lib/*" src/*.java

Windowsのコマンドプロンプトで上記のコマンドを実行すると,エラーで中断せず無事にコンパイルされます.しかし,Cygwinで実行すると,失敗するのです.自分の知識不足が原因のような気がしますが,思いついたので,アスタリスクの後にセミコロンを付けて実行すると,コンパイルされるようになりました.具体的には,次のような感じです.

javac -cp "lib/*;" src/*.java

セミコロンがない状態では,ワイルドカードがシェルに展開されているような感じです.

0 件のコメント: