cmd中javac和java使用及注意事項詳解
一、簡述:
cmd中,執(zhí)行java命令與javac命令的區(qū)別:
javac:是編譯命令,將java源文件編譯成.class字節(jié)碼文件。
例如:javac hello.java
將生成hello.class文件。
java:是運行字節(jié)碼文件;由java虛擬機對字節(jié)碼進(jìn)行解釋和運行。
例如:java hello
二、詳述:
下面我們來寫個java文件試試。
1、打開記事本,輸入一個類+主函數(shù)
public class Hello{ public static void main(String[] args) { System.out.println("Hello World"); } }
2、點擊 文件->保存,保存到相應(yīng)文件夾下,文件名修改了xxx.java
3、在Hello.java文件夾內(nèi),空白位置,按住鍵盤Shift,右擊鼠標(biāo),選擇“在此處打開命令窗口”
4、輸入 javac Hello.java 回車
如果java類書寫格式?jīng)]有錯誤,cmd不會報錯,而且在java文件同目錄內(nèi)生成一個class文件。
5、輸入 java Hello 回車
若輸出下圖,恭喜你,成功了!你已經(jīng)把java類中,輸出打印“Hello World”顯示在cmd命令行中。
三、總結(jié):
首先我們使用記事本編寫java源代碼,擴(kuò)展名.java;
在命令行模式中,輸入命令:javac 源文件名.java,對源代碼進(jìn)行編譯,生成class字節(jié)碼文件;
編譯完成后,如果沒有報錯信息,輸入命令:java Hello,對class字節(jié)碼文件進(jìn)行解釋運行,打印“Hello World”。
為了方便大家理解javac和java編譯運行過程,可以看下圖:
至此,我相信大家應(yīng)該對javac和java使用有了比較客觀的了解。
四、答疑:
接下來,我們來看一下大家在實踐中容易遇到的問題。
問題一:cmd命令一定要準(zhǔn)確,區(qū)分大小寫,注意是否要加擴(kuò)展名。
javac Hello.java
java Hello
問題二:javac命令報錯,如下圖
javac命令報錯,一般都是java代碼有誤,需要檢查修改。
下圖中,java代碼很明顯的錯誤,輸出打印語句寫在了main函數(shù)的外面,修改正確就不會報錯了。
javac命令報錯,去看java代碼,肯定有錯誤。
問題三:javac命令執(zhí)行完成,生成class文件,但是java命令報錯,如下圖
我查閱資料,找到報錯的原因,首先檢查java源代碼,記住,java類不要加package路徑!再就是java環(huán)境變量有問題,咱們一起來檢查一下。
右擊“計算機-屬性-高級系統(tǒng)設(shè)置”,單擊“環(huán)境變量”。我相信大家都已經(jīng)配置java環(huán)境變量,咱們來檢查一下。
逐一核對 ”JAVA_HOME” “Path” “CLASSPATH”
(1)"JAVA_HOME",變量值是你的電腦JDK的安裝路徑,我的是"D:\java\tool\java1.8\JDK"
(2)"Path",在原變量值的最后面加上”;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin”
(3)”CLASSPATH”,變量值”.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar”
特別注意變量值開頭是”.;”(點分號),這個地方需要特別注意,我就是因為這個點和分號不對報錯的。
java源碼修改后,需要把之前生成的class文件刪除,從新運行javac和java命令。
環(huán)境變量修改后,一定要重啟cmd命令行窗口,再把把之前生成的class文件刪掉,重新運行javac和java命令。
注:若在輸入javac命令時,顯示'javac'不是內(nèi)部或外部命令,原因也是因為沒有提前安裝好JDK開發(fā)環(huán)境或環(huán)境變量配置有誤。
五、作者推薦
cmd命令行運行java代碼是最基礎(chǔ),而且都應(yīng)該掌握的方式,特別是對于新人來說,應(yīng)該最先接觸學(xué)習(xí)。隨著學(xué)習(xí)的深入,如果覺得記事本寫java代碼太low,作者推薦使用EditPlus,功能很強大的體積又很小的文本編輯軟件,是收費軟件,不過破解很簡單,大家可以百度一下。然后大家會用到專業(yè)的IDE(Integrated Development Environment,集成開發(fā)環(huán)境)軟件,如Eclipse(免費),MyEclipse(收費),IntelliJ IDEA(收費)等等,目前我只接觸到以上列舉的三款I(lǐng)DE,免費的推薦Eclipse,收費的推薦IntelliJ IDEA,收費軟件網(wǎng)上都有破解方法,但是破解版不如免費版穩(wěn)定,大家可以自行選擇。
因時間倉促,作者水平有限,文中難免有不足之處,懇請大家批評指正。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Java練手小項目實現(xiàn)一個項目管理系統(tǒng)
讀萬卷書不如行萬里路,只學(xué)書上的理論是遠(yuǎn)遠(yuǎn)不夠的,只有在實戰(zhàn)中才能獲得能力的提升,本篇文章手把手帶你用Java實現(xiàn)一個項目管理系統(tǒng),大家可以在過程中查缺補漏,提升水平2021-10-10Java實現(xiàn)常用加密算法——單向加密算法MD5和SHA
本篇文章主要介紹了Java實現(xiàn)常用加密算法——單向加密算法MD5和SHA,信息加密后數(shù)據(jù)更安全,需要的朋友可以參考下。2016-10-10vue用CryptoJS加密,java用CryptoUtil解密
CryptoJS是一個JavaScript庫,提供了一系列密碼學(xué)函數(shù)和工具,用于加密、解密、生成摘要等任務(wù),本文vue前端使用CryptoJS加密,java后端使用CryptoUtil解密2024-09-09mybatisplus實現(xiàn)自動創(chuàng)建/更新時間的項目實踐
Mybatis-Plus提供了自動填充功能,可以通過實現(xiàn)MetaObjectHandler接口來實現(xiàn)自動更新時間的功能,本文就來介紹一下mybatisplus實現(xiàn)自動創(chuàng)建/更新時間的項目實踐,感興趣的可以了解下2024-01-01