Posted on 2008-06-04 03:19
Robert Su 閱讀(25893)
評(píng)論(5) 編輯 收藏
很久都是用eclipse來寫java程序
今天看core java,做上面的練習(xí),居然welcome都出java.lang.NoClassDefFoundError這樣的錯(cuò)誤
找了半天才發(fā)現(xiàn)是新系統(tǒng),沒有設(shè)置classpath
設(shè)置了居然還是不行
C:\Program Files\Java\JDK1.5\lib;C:\Program Files\Java\JDK1.5\lib\tools.jar
都是長(zhǎng)時(shí)間不練習(xí)的原因~~~
應(yīng)該在前面加
.;
.;C:\Program Files\Java\JDK1.5\lib;C:\Program Files\Java\JDK1.5\lib\tools.jar
少了 < .; > 就造成巨大的差別
在沒有做任何設(shè)定之下 , 預(yù)設(shè)的CLASSPATH就是一個(gè) .
這個(gè) . 代表 命令提示字元的當(dāng)前目錄
沒設(shè)定比設(shè)定錯(cuò)誤還要好一點(diǎn)(對(duì)新手而言) , 只要 .class 在當(dāng)前目錄 , 還是可以執(zhí)行程序的
但是你若下了設(shè)定
SET CLASSPATH=C:"j2sdk1.4.1_03"lib;C:"j2sdk1.4.1_03"lib"tools.jar;
少了這個(gè). 若你當(dāng)前的目錄卻不是 C:"j2sdk1.4.1_03"lib , 就會(huì)發(fā)生NoClassDefFoundError
正確的設(shè)定
SET CLASSPATH=.;C:"j2sdk1.4.1_03"lib;C:"j2sdk1.4.1_03"lib"tools.jar;
表示當(dāng)前的目錄 , C:"j2sdk1.4.1_03"lib" , 以及 tools.jar 內(nèi)的class都可以載入