cygwinでの注意点:パスの指定方法

Javaのクラスパス指定する場合等、注意が必要

bashlinux 形式で指定してもダメ。
bashでもwin形式で指定する。この時、linuxシンボリックリンクは使えないので、実パスで指定しなければダメ。

cygpath を利用すると、linux形式のパスをWin形式に変換してくれる。

bash なら以下のような感じ。
javac -classpath `cygpath -wp /usr/local/src/java_app/:/usr/local/hadoop/hadoop-0.17.2.1-core.jar` *.java


dosでは、普通にWin形式で指定する。
やはりlinuxシンボリックリンクは使えないので、実パスで指定しなければダメ。

■(Cygwinに限らない話だろうが)JAVA_HOME 等にスペースが含まれているとちゃんと、パスを認識しれくれないことがある
例えば、
C:\Program Files\Java\/jdk1.6.0_13
はダメ。スペースのところで切られる。JAVA_HOMEをからなず""で括って使えば問題ないが、hadoop 等は""で括らず使ってたりする。