實(shí)回想一下,自己也是從這個(gè)階段過(guò)來(lái)的,說(shuō)一句“你好”,真的是一個(gè)最簡(jiǎn)單的問(wèn)題
嗎?...//think 好了,言歸正傳,let/'s say /"HelloWorld!/" in java...
首先,我們要假設(shè)一下我們的平臺(tái)是Windows+JDK(linux環(huán)境下也差不多)。這個(gè)環(huán)境
是相當(dāng)普遍、基礎(chǔ)和入門的。確定已經(jīng)正確安裝JDK了,下一步是小心翼翼地敲入某本教
程上的HelloWorld源碼,存盤,然后編譯,javac ...問(wèn)題來(lái)了:
* 錯(cuò)誤1:
/'javac/' 不是內(nèi)部或外部命令,也不是可運(yùn)行的程序或批處理文件。
(javac: Command not found)
產(chǎn)生的原因是沒(méi)有設(shè)置好環(huán)境變量path。Win98下在autoexce.bat中加入
path=%path%;c://jdk1.2//bin,Win2000下則控制面板->系統(tǒng)->高級(jí)->環(huán)境變量->系統(tǒng)變
量...看到了?雙擊Path,在后面加上c://jdk1.2//bin。當(dāng)然我們假設(shè)JDK安裝在了
c://jdk1.2目錄下(有點(diǎn)唐僧了?)...似乎還要重啟系統(tǒng)才起作用...(//知道了!//西
紅柿)
好,再試試!javac HelloWorld
* 錯(cuò)誤2:
HelloWorld is an invalid option or argument.
拜托,給點(diǎn)專業(yè)精神,java的源程序是一定要存成.java文件的,而且編譯時(shí)要寫全
.java呀。
OK, javac HelloWorld.java (這回總該成了吧?)
* 錯(cuò)誤3:
HelloWorld.java:1: Public class helloworld must be defined in a file called
/"HelloWorld.java/".
public class helloworld{
^
這個(gè)問(wèn)題嘛,是因?yàn)槟愕念惖拿峙c文件的名字不一致。(誰(shuí)說(shuō)的,明明看到人家都有
這樣寫的 ;( ) OK,準(zhǔn)確地說(shuō),一個(gè)Java源程序中可以定義多個(gè)類,但是,具有public
屬性的類只能有一個(gè),而且要與文件名相一致。還有,main方法一定要放在這個(gè)public
的類之中,這樣才能java(運(yùn)行)這個(gè)類。另外一點(diǎn)是Java語(yǔ)言里面是嚴(yán)格區(qū)分大小寫
的,初學(xué)者要注重呀。像上例中 helloworld 與 HelloWorld 就認(rèn)為是不一樣,因而...
oh... 好,改好了,嘻嘻... javac HelloWorld.java
...(咦,怎么什么也沒(méi)有呀?)//faint 這就是編譯通過(guò)了!看看是不是多了一個(gè)
HelloWorld.class ?
(hehe..按書上教的:) java HelloWorld (!! 這個(gè)我知道,不是java HelloWorld.class
喲)
* 錯(cuò)誤4:
Exception in thread /"main/" java.lang.NoClassDefFoundError: HelloWorld
呵呵,這個(gè)嘛,就是聞名的類路徑(classpath)問(wèn)題啦。實(shí)際上,類路徑是在編譯過(guò)程就
涉及的Java中的概念。classpath就是指明去哪里找用到的類,就這么簡(jiǎn)單。由于我們的
HelloWorld沒(méi)用到其它的(非java.lang包中的)類,所以編譯時(shí)沒(méi)碰到這個(gè)問(wèn)題。運(yùn)行
時(shí)呢,就要指明你的類在哪里了。解決方法嘛,可以用下面的命令運(yùn)行:
java -classpath . HelloWorld
“.”就代表當(dāng)前目錄。當(dāng)然這樣做有點(diǎn)麻煩(是“太麻煩”!),我們可以在環(huán)境變量
中設(shè)置默認(rèn)的classpath。方法就照上述設(shè)置path那樣。將classpath設(shè)為:
classpath=.;c://jdk1.2//lib//dt.jar;c://jdk1.2//lib//tools.jar 后面的兩個(gè)建議也設(shè)上
,以后開(kāi)發(fā)用的著。
java -classpath . HelloWorld(再不出來(lái)我就不學(xué)java了)
* 錯(cuò)誤5:
Exception in thread /"main/" java.lang.NoSUChMethodError: main
(//咣當(dāng))別,堅(jiān)持住。看看你的代碼,問(wèn)題出在main方法的定義上,寫對(duì)地方了嗎,
是這樣寫的嗎:
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注