CLASSPATH是什么?它的作用是什么?
它是Javac編譯器的一個環(huán)境變量。
它的作用與import、package關(guān)鍵字有關(guān)。
當(dāng)你寫下improt java.util.*時,編譯器面對import關(guān)鍵字時,就知道你要引入java.util這個package中的類;但是編譯器如何知道你把這個package放在哪里了呢?所以你首先得告訴編譯器這個package的所在位置;如何告訴它呢?就是設(shè)置CLASSPATH啦 :) 如果java.util這個package在c:\JDK\ 目錄下,你得把c:\jdk\這個路徑設(shè)置到CLASSPATH中去!當(dāng)編譯器面對import java.util.*這個語句時,它先會查找CLASSPATH所指定的目錄,并檢視子目錄java\util是否存在,然后找出名稱吻合的已編譯文件(。class文件)。如果沒有找到就會報錯!
CLASSPATH有點像c\C++編譯器中的INCLUDE路徑的設(shè)置哦,是不是?當(dāng)c\c++編譯器遇到include這樣的語句,它是如何運作的?哦,其實道理都差不多!搜索INCLUDE路徑,檢視文件!
當(dāng)你自己開發(fā)一個package時,然后想要用這個package中的類;自然,你也得把這個package所在的目錄設(shè)置到CLASSPATH中去!
CLASSPATH的設(shè)定,對JAVA的初學(xué)者而言是一件棘手的事。所以Sun讓JAVA2的JDK更聰明一些。你會發(fā)現(xiàn),在你安裝之后,即使完全沒有設(shè)定CLASSPATH,你仍然能夠編譯基本的JAVA程序,并且加以執(zhí)行。
它是Javac編譯器的一個環(huán)境變量。
它的作用與import、package關(guān)鍵字有關(guān)。
當(dāng)你寫下improt java.util.*時,編譯器面對import關(guān)鍵字時,就知道你要引入java.util這個package中的類;但是編譯器如何知道你把這個package放在哪里了呢?所以你首先得告訴編譯器這個package的所在位置;如何告訴它呢?就是設(shè)置CLASSPATH啦 :) 如果java.util這個package在c:\JDK\ 目錄下,你得把c:\jdk\這個路徑設(shè)置到CLASSPATH中去!當(dāng)編譯器面對import java.util.*這個語句時,它先會查找CLASSPATH所指定的目錄,并檢視子目錄java\util是否存在,然后找出名稱吻合的已編譯文件(。class文件)。如果沒有找到就會報錯!
CLASSPATH有點像c\C++編譯器中的INCLUDE路徑的設(shè)置哦,是不是?當(dāng)c\c++編譯器遇到include
當(dāng)你自己開發(fā)一個package時,然后想要用這個package中的類;自然,你也得把這個package所在的目錄設(shè)置到CLASSPATH中去!
CLASSPATH的設(shè)定,對JAVA的初學(xué)者而言是一件棘手的事。所以Sun讓JAVA2的JDK更聰明一些。你會發(fā)現(xiàn),在你安裝之后,即使完全沒有設(shè)定CLASSPATH,你仍然能夠編譯基本的JAVA程序,并且加以執(zhí)行。