Posted on 2006-05-29 07:28
shaofan 閱讀(2593)
評論(3) 編輯 收藏 所屬分類:
Java
今
天差點栽在JAVA路徑設置上。
本來是想用ANT的。但是在命令行輸入ant,得到了這樣的提示:
Usage: java [-options] class [args...]
?????????? (to execute a class)
?? or? java [-options] -jar jarfile [args...]
?????????? (to execute a jar file)
?? ??? ......
?? ??? ......
奇怪。想來是剛重裝了系統,JAVA_HOME沒有設好。于是檢查了一遍。問題依舊。那是不是虛擬機的問題?虛擬機缷掉重裝。折騰了半天,問題還是沒有解決。
逼得我只能靜下心來仔細想想問題所在了。ant的命令執行的是一個批處理文件,在這個批處理中它會調用java.exe來運行ant。出現這樣的問題,必定是java.exe的用法格式不對了。于是打開ant.bat,發現它的執行有幾個分支。在每個分支上加上一句echo b1, echo b2,再次運行,確定是哪個分支被執行。被運行的語句分支就是這個了:
:runAntWithClasspath
"%_JAVACMD%" %ANT_OPTS% -classpath "%ANT_HOME%\lib\ant-launcher.jar" "-Dant.home=%ANT_HOME%" org.apache.tools.ant.launch.Launcher %ANT_ARGS% -cp "%CLASSPATH%" %ANT_CMD_LINE_ARGS%
goto end
OK。現在幾乎可以肯定是那一堆%%的變量里出了問題。拿出我們程序員百試不爽的絕招的時候了:打印每個變量。哈哈,問題出來了:
"D:\lib\apache-ant-1.6.5\\lib\ant-launcher.jar"
看到了嗎?"lib"前面居然是兩個反斜杠杠。OK。發現了問題所在,現在是解決的時候了。打開系統變量ANT_HOME,果然,它被設置為"D:\lib\apache-ant-1.6.5\"。把最后的反斜杠去掉。再試運行ant,得到:
Buildfile: build.xml does not exist!
Build failed
ant可以正常運行,問題解決了。
這個小小的問題前后用了我快一個小時的時間。但是最后真正發現并解決問題的時間也不過十分鐘而已。看來還是太浮躁了。如果一開始就用心去想,也不會有這么多的浪費。想想,為什么那后面會多一個\,其實也很簡單,從WINDOWS的地址欄直接拷貝的咯。Windows啊......我知道不能怪Windows,但總要找個出氣桶,對不對?
自以為用了幾年JAVA已經挺熟了,沒想到差點栽到最低級的失誤里了。反省反省。。。。。。