一.javac.exe與java.exe:
a.含義:
javac:編譯器
java:虛擬機
b.查看版本命令:
javac -version
java -version
c.安裝完成jdk後,出現"在CMD中,直接使用java可以,但是javac不行"?
--原因:在windows系統中,當直接在CMD中打開可執行文件時,系統查找該程序的優先級路徑如下:
1.當前路徑;
2.系統註冊表;
3.path環境變量;
(注:當上一級的路徑找不到纔會搜索下一級路徑)
d.確保java文件能夠正確編譯執行的必須前提:
編譯器的版本不能高於虛擬機的版本!
二.path與classpath
1.path:
a.用途:系統尋找可執行文件(.exe等)的搜索路徑
b.安裝jdk後,需要設置path環境變量
c.編譯.java文件的方法:
--進入到文件所在路徑,直接編譯即可:javac A.class
--最快捷的方法: javac F:\code\A.class (注:這種方法不適用於classpath)
2.classpath:
a.用途:java虛擬機尋找.class字節碼文件的搜索路徑
b.在jdk1.5開始,
classpath若是沒有配置,則默認是當前目錄;否則,以實際配置路徑爲準.
c.在jdk1.5之前,
classpath若是沒有配置,是無法執行.class文件的,此時可以通過新建名爲"classpath"的環境變量,設置其值爲"."
d.執行.class字節碼文件的方法:
第一種方法,進入到正確路徑,直接使用java編譯
第二種方法,設置classpath後,進行java編譯
第三種方法,不需設置classpath,直接使用: java -cp F:\code\A
三.實際運用:
在D:\myCode\目錄下,有一個TestDemo.java文件,內容如下:
public class TestDemo
{
public static void main(String [] args)
{
System.out.println("Run......");
}
}
需求一:如何正確編譯該.java文件?
(前提:你已經正確設置了path環境變量;接下來就是正確的使用javac命令)
解答一:打開CMD
1.輸入:d: ,回車
2.輸入:cd myCode ,回車
3.輸入:javac TestDemo.java ,回車,完成編譯。
解答二:打開CMD
1.輸入:javac D:\myCode\TestDemo.java ,回車,完成編譯。
需求二:如何正確執行上面生成的.class類文件?
(若是沒有設置classpath,默認就是當前目錄)
解答一:
4.輸入:java TestDemo ,回車,完成執行。
解答二: (也可以使用:-cp命令,即:java -cp D:\myCode\ TestDemo,完成執行 ;而且使用-cp比設置classpath的優先級高)
2.輸入:set classpath=D:\myCode\;%path% ,回車
3.輸入:java TestDemo.java ,回車,完成執行。
需求三:
現在F:\itcast-0321\code\day01\目錄,有TestDemo.java文件,內容爲:
package cn.itcast;
public class TestDemo
{
public static void main(String [] args)
{
System.out.println("Run......");
}
}
需求三:如何正確編譯執行該.java文件?
解答:打開CMD,
1. 輸入:F:\ ,回車
2. 輸入:cd itcast-0321\code\day01 ,回車
3. 輸入:javac –d . TestDemo.java,回車
4. 輸入:java cn.itcast.TestDemo,回車,完成編譯運行。