上一篇文章中,我們介紹了如何安裝工具包,那么是不是安裝完JDK以后就可以編寫代碼,準備編譯運行了呢?別著急,先和北京北大青鳥學校老師一起檢查一下吧。
點擊操作系統桌面上左下角的‘開始’菜單,選擇‘運行’,然后在打開對話框里輸入CMD,進入命令提示符窗口,也叫DOS界面。現在大家在窗口里應該看到提示符:C:\Documents and Settings\Administrator>
下面讓我們在提示符后面敲上這樣一個命令:Java,出現了這樣的提示了嗎?
Usage: Java [-options] class [args...]
(to execute a class)
or Java [-options] -jar jarfile [args...]
(to execute a jar file)
……
這是Java命令的幫助信息,如果有,那么成功一半了。接下來,在命令提示符處敲:JavaC。你看到的也許會是這樣:‘Javac’不是內部或外部命令,也不是可運行的程序或批處理文件。為什么出現這樣的情況呢?
北京北大青鳥學校教員解釋:這是因為我們的操作系統在執行一個命令時,首先會到當前目錄下去查找這個命令文件。如果在當前目錄下找不到,他就會按照系統變量PATH所指示的多條路徑里去搜索,直到找到為止。如果在這兩個地方都找不到他就會報上面大家看到的錯誤。
在C:\Documents and Settings\Administrator這個路徑下我們當然找不到JavaC命令。我們的JDK不是安裝在C盤根目錄下嗎?而我們的JavaC、Java命令則在JDK目錄下的BIN文件夾里,這個夾子里還有許多其他寶貝命令。
怎樣才能讓操作系統找到JavaC命令呢?很簡單!我們需要修改一下系統變量PATH,這樣就不用每次要運行這個命令時都得跑到C:\j2sdk1.4.2_02\bin這個路徑下面去了。
當我們在PATH變量里加了一條路徑:C:\j2sdk1.4.2_02\bin以后,再到命令提 示符狀態下輸入JavaC,就會出現幫助提示了。這就說明我們可以開始寫Java程序了。讓我們寫一個Hello.Java測試一下吧,在E:\LESSON1這個文件夾下創建 v1 了一個文本文件,輸入如下一段代碼,并且將之保存為Hello.Java。
public class Hello
{
public static void main(String args[])
{
System.out.println("Hello World!");
}
}
現在我們又回到命令提示符狀態下。在提示符處輸入:JavaC Hello.Java,命令又出錯了。為什么?因為文件是建在E:\LESSON1下面,而我們的當前目錄卻不是它。 在提示符處敲入:‘E:’,然后再敲:‘cd lesson1’,進入Java文件所在的那個目錄后,現在再敲JavaC Hello.Java,文件成功編譯。 注意成功編譯后會在當前目錄下生出一個名叫:Hello.class的字節碼文件。但是屏幕上沒有任何提示。
再試著運行一下‘Java Hello‘這個命令,可以運行嗎?當然不行。因為我們的字節碼文件是在Java虛擬機里運行的,所有關于虛擬機要使用的字節碼文件的路徑必須在一個叫做CLASSPATH的操作系統變量里找得到。否則我們的虛擬機就無法找到這個字節碼文件,從而也就無從執行了。
先運行如下命令:set classpath=%classpath%;E:\lesson1,然后再運行 Java Hello 這個命令。屏幕上出現:Hello world! 不過當我們重新啟動一個命令提示符窗口再運行這個Java文件時,屏幕提示:Exception in thread "main" Java.lang.NoClassDefFoundError: Hello。還是老問題,虛擬機又找不到字節碼文件了。
其實我們在DOS窗口中設置的系統變量只對當前窗口有效。要想讓我們的變量設置對任何一個DOS窗口都有效,還得到桌面上去做。好了,這篇內容介紹到此,在下一篇文章中,我們將繼續講述CLASSPATH這個Java環境變量的設置。 (北京北大青鳥學校)