• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            天之道

            享受編程的樂趣。
            posts - 118, comments - 7, trackbacks - 0, articles - 0
              C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理


            首先安裝jdk于C,安裝后目錄為:C:\Program Files\Java\jdk1.6.0,然后右鍵我的電腦,選擇高級--->環(huán)境變量,配置如下:

            JAVA_HOME=C:\Program Files\Java\jdk1.6.0;

            path=%JAVA_HOME%\bin;

            classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tool.jar;

            點(diǎn)擊確定完成。

             

            HelloWorld.java經(jīng)典測試代碼:

            public class HelloWorld{

            public static void main(String args[]){

            System.out.println("hello world !")

            }

            }

            命令行輸入:javac HelloWorld.java

            生成HelloWorld.class

            命令行輸入:java HelloWorld

            屏幕上打印"hello world !"

             

            很多人在初學(xué)Java的時候經(jīng)常會被書中介紹的一堆環(huán)境變量的設(shè)置搞得頭昏腦脹,很多書中都會在初裝JDK的時候讓大家設(shè)置JAVA_HOME環(huán)境變量,在開發(fā)程序的時候設(shè)置CLASSPATH環(huán)境變量,而很多人并不理解這兩個環(huán)境變量的作用,我們來分別進(jìn)行詳細(xì)的闡述。

            首先是JAVA_HOME環(huán)境變量,我們先來掌握這個環(huán)境變量的設(shè)置內(nèi)容,JAVA_HOME這個環(huán)境變量的設(shè)置內(nèi)容是JDK的安裝目錄,比如說您的JDK安裝在d:\jdk1.6.0這個目錄下,請您查看一下這個目錄下是不是有一個子目錄bin,bin目錄中是不是有java.exe這個文件,如果是,那么您的JAVA_HOME環(huán)境變量的內(nèi)容應(yīng)該為d:\jdk1.6.0。那么我們設(shè)置這個環(huán)境變量的作用是什么呢?就單獨(dú)的java開發(fā)而言,這個環(huán)境變量并沒有任何作用,這就是很多根據(jù)書上的描述設(shè)置好之后,把一本書學(xué)完也沒有用到這個變量,所以很是不理解。

            其實(shí)JAVA_HOME變量最好還是設(shè)置一下。首先,我們?yōu)榱四軌蚓幾g和運(yùn)行java程序,需要在PATH環(huán)境變量中把java.exe所在的目錄設(shè)置為PATH變量的一部分,目的是為了能夠通過命令行運(yùn)行javac和java命令成為可能,當(dāng)你在命令行中輸入javac ...或者java ...的時候,如果提示你一個錯誤:'javac' 不是內(nèi)部命令或外部命令,也不是可運(yùn)行的程序或批處理文件。這時候說明操作系統(tǒng)沒有找到你通過命令行輸入的javac這個命令,為什么呢?因?yàn)椴僮飨到y(tǒng)并 不知道你的javac.exe這個文件在哪里,所以無法執(zhí)行對應(yīng)的文件。那么為了能夠讓操作系統(tǒng)找到這個可執(zhí)行文件,我們就需要把javac.exe這個可執(zhí)行文件所在的目錄作為PATH環(huán)境變量的一部分設(shè)置起來,這樣當(dāng)你在命令行輸入一個命令的時候,操作系統(tǒng)就會自動搜索PATH變量中所指定的所有目錄了。在Windows系統(tǒng)中PATH變量中的所有路徑采用分號分割,如果在Linux系統(tǒng)中采用冒號分割。另外說明一點(diǎn),如果你設(shè)置好了環(huán)境變量,在命令行中還是出現(xiàn)同樣的錯誤,那么有兩種可能,一種就是你的設(shè)置不正確,另一種就是你的設(shè)置沒有生效,一般你可以關(guān)閉命令行窗口再重新打開就可以了。這對這個設(shè)置,以剛才的目錄為例,那么PATH變量中的內(nèi)容就是...;d:\jdk1.6.0\bin,這時候我們可以借用已經(jīng)設(shè)定過的JAVA_HOME,將PATH的內(nèi)容修改為:...;%JAVA_HOME%\bin,這樣的設(shè)置有一定的好處,當(dāng)你的系統(tǒng)中重新安裝JDK,并改變過目錄的話,你只要修改JAVA_HOME的內(nèi)容就可以了,PATH則不需要修改。此外,JAVA_HOME變量還會有一些其他用途,比如Eclipse這個IDE,它本身是由java程序編寫的,那么在運(yùn)行的時候必然需要虛擬機(jī)的存在,所以Eclipse在啟動時需要查找虛擬機(jī),如果有JAVA_HOME這個變量,那么 Eclipse就會利用這個變量找到虛擬機(jī)的路徑。所以雖然開始JAVA_HOME環(huán)境變量可以不設(shè)置,但是還是建議大家為以后考慮而設(shè)置上。

            我們繼續(xù)來談?wù)揅LASSPATH的問題,很多書上在講解java程序的時候建議大家設(shè)置CLASSPATH這個環(huán)境變量,我們這里不建議大家設(shè)置。原因我們會在稍后的時候看到。講到CLASSPATH,我們首先來看編寫java程序時一直在用的兩個命令javac和java。

            javac的命令語法是這樣的:

            javac <選項(xiàng)> <源文件>

            我們常用的情況是這樣的:

            javac -classpath <類路徑> <要編譯的java源文件>

            這里的類路徑輸入什么呢?這里的類路徑是指要編譯的java源文件中所用的非java的基礎(chǔ)API中的類在那個目錄下,路徑可以是多個目錄,用分號隔開 來。比如說我們要編譯App.java這個文件,而這個文件中用到了com.util這個包中的MyDate這個類,現(xiàn)在我們假設(shè)MyDate這個類存在目錄是:d:\mylib\com\util\MyDate.class,那么我們?nèi)绾尉幾gApp這個類呢?我們的命令如下:

            javac -classpath d:\mylib App.java

            注意這里的classpath的內(nèi)容,我們只是指定路徑到package所在目錄,并不能把package一起指定進(jìn)去,而且MyDate.class必須在com\util這個目錄中,因?yàn)檫@個類定義了package為com.util。好了現(xiàn)在你對javac中的classpath明白了嗎?

            我們再來看java這個命令,這個命令的語法是這樣的:

            java [選項(xiàng)] 類 [參數(shù)]

            比如說以上面的例子,我們假設(shè)App這個類位于com.app這個package中,它的存放目錄是:d:\dev\myapp\com\app\App.class,那么我們該如何運(yùn)行這個類呢?命令如下:

            java -classpath d:\dev\myapp;d:\mylib com.app.App

            從命令中我們可以看到,在classpath后面我們指定兩個目錄,分別是App這個類的package所在的目錄和MyDate這個類的package 所在的目錄,這里的類路徑要給定的是要運(yùn)行的類和這個類用到的所有類的package所在的目錄,多個目錄之間用分號隔離開來,最后指定要運(yùn)行的類的時候必須加上package。

            好了到這里你應(yīng)該徹底掌握了編譯java程序和運(yùn)行java程序的訣竅了吧。如果我們在系統(tǒng)環(huán)境變量中設(shè)置了CLASSPATH的話,在命令行中通過java運(yùn)行的時候如果再不指定CLASSPATH參數(shù),那么就會導(dǎo)致java虛擬機(jī)只是按照CLASSPATH環(huán)境變量中的目錄搜索類,而不在你的當(dāng)前目錄下搜索類,結(jié)果自然會出現(xiàn)Exception in thread "main" java.lang.NoClassDefFoundError,所以當(dāng)你看到這個錯誤的時候請查看一下你的系統(tǒng)環(huán)境變量,如果沒有設(shè)置 CLASSPATH,那么在檢查一下你的當(dāng)前目錄。為了確保萬無一失,按照上面講述的例子進(jìn)行操作是不會發(fā)生任何錯誤。


            只有注冊用戶登錄后才能發(fā)表評論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            久久久久久精品免费看SSS | 亚洲国产精品无码久久久秋霞2| 国产精品美女久久久久av爽| 久久精品无码免费不卡| 久久丝袜精品中文字幕| 要久久爱在线免费观看| 99久久国产宗和精品1上映| 久久97精品久久久久久久不卡| 久久99精品国产麻豆蜜芽| 国产成人精品综合久久久久| 情人伊人久久综合亚洲| 欧美伊人久久大香线蕉综合| 久久最新精品国产| 亚洲中文字幕无码久久2020| 国产精品99久久久久久宅男| 新狼窝色AV性久久久久久| 久久精品女人天堂AV麻| 久久人人妻人人爽人人爽| 欧美色综合久久久久久 | 性高湖久久久久久久久| yellow中文字幕久久网| 久久精品一本到99热免费| 亚洲国产一成久久精品国产成人综合 | 草草久久久无码国产专区| 国产成人无码精品久久久性色| 久久久精品国产Sm最大网站| 99久久99这里只有免费费精品| 久久91精品国产91| 久久一区二区三区免费| 国产精品欧美久久久久无广告 | 看全色黄大色大片免费久久久| 久久er国产精品免费观看2| 亚洲熟妇无码另类久久久| 亚洲精品视频久久久| 久久亚洲AV无码西西人体| 久久国产精品免费一区| 观看 国产综合久久久久鬼色 欧美 亚洲 一区二区 | 久久久久久久综合日本| 国产精品久久一区二区三区| 久久久久久国产精品无码超碰| 久久男人Av资源网站无码软件|