Java找不到或無法加載主類及編碼錯誤問題的解決方案
先給出具體代碼(當(dāng)前目錄為:D:\pro):
package org.test; public class TestJava{ public static void main(String args[]){ System.out.println("Hello World!!!"); System.out.println("你好,Java!!"); } }
1、 cmd 窗口運行時出現(xiàn)“找不到或無法加載主類”問題:
D:\pro>javac TestJava.java D:\pro>java TestJava 錯誤: 找不到或無法加載主類 TestJava
出現(xiàn)這種問題的主要原因是程序中有package即包的存在。所以,我們有兩種方法對包進(jìn)行處理。
(1)手動新建包的目錄:
如在當(dāng)前目錄下新建:(d:\pro)–>org–>test
然后把編譯生成的TestJava.class文件移動到d:\pro\org\test目錄下,
此時再運行java org.test.TestJava
就可以輸出正確結(jié)果了。
D:\pro>javac TestJava.java
D:\pro>java org.test.TestJava
Hello World!!!
你好,Java?。?/p>
(2)自動創(chuàng)建包的目錄:
運行代碼:
javac -d . TestJava.java java org.test.TestJava
(注意:”-d . “這個點的前面是有空格的,否則還是運行還是有問題的。)也能輸出正確結(jié)果:
D:\pro>javac -d . TestJava.java
D:\pro>java org.test.TestJava
Hello World!!!
你好,Java!!
2、 cmd窗口運行時出現(xiàn)亂碼問題:
因為我們的系統(tǒng)大多是中文系統(tǒng),而不少編程軟件都是英文編譯環(huán)境,所以,當(dāng)運行含有中文的代碼時,容易出現(xiàn)亂碼問題,這時候需要改變代碼的編碼就行了。
D:\pro>javac -d . TestJava.java TestJava.java:4: 錯誤: 編碼GBK的不可映射字符 * @date Time: 2016騫?4鏈?22鏃ヤ笅鍗?3:07:49 ^ TestJava.java:4: 錯誤: 編碼GBK的不可映射字符 * @date Time: 2016騫?4鏈?22鏃ヤ笅鍗?3:07:49 ^ TestJava.java:4: 錯誤: 編碼GBK的不可映射字符 * @date Time: 2016騫?4鏈?22鏃ヤ笅鍗?3:07:49 ^ 3 個錯誤
所以這個時候需要改變中文的gbk 編碼為utf-8編碼:
代碼:java -encoding UTF-8 TestJava.java
D:\pro>javac -encoding UTF-8 -d . TestJava.java D:\pro>java org.test.TestJava Hello World!!! 你好,Java??!
從上面的代碼也可以看出來,當(dāng)程序既帶有包,且還編碼不對時,我們也可以一次性解決。
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接
相關(guān)文章
Springboot中useGeneratedKeys用法小結(jié)
本文主要介紹了Springboot中useGeneratedKeys用法小結(jié),useGeneratedKeys?是 MyBatis 框架中的一個參數(shù),用于指定是否允許 JDBC 支持自動生成主鍵,感興趣的可以了解一下2024-09-09如何在SpringBoot 中使用 Druid 數(shù)據(jù)庫連接池
這篇文章主要介紹了SpringBoot 中使用 Druid 數(shù)據(jù)庫連接池的實現(xiàn)步驟,幫助大家更好的理解和學(xué)習(xí)使用SpringBoot,感興趣的朋友可以了解下2021-03-03SpringAop中AspectJ框架的切入點表達(dá)式
這篇文章主要介紹了SpringAop中AspectJ框架的切入點表達(dá)式,AspectJ是一個基于Java語言的AOP框架,Spring2.0以后新增了對AspectJ切點表達(dá)式支持,@AspectJ 是AspectJ1.5新增功能,通過JDK5注解技術(shù),允許直接在Bean類中定義切面,需要的朋友可以參考下2023-08-08Java實現(xiàn)用Freemarker完美導(dǎo)出word文檔(帶圖片)
這篇文章主要介紹了Java實現(xiàn)用Freemarker完美導(dǎo)出word文檔(帶圖片),具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-07-07解決String字符串轉(zhuǎn)JSONObject順序不對的問題
這篇文章主要介紹了解決String字符串轉(zhuǎn)JSONObject順序不對的問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-12-12MyBatis-Puls插入或修改時某些字段自動填充操作示例
這篇文章主要為大家介紹了MyBatis-Puls插入或修改時某些字段自動填充操作示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-12-12Java使用Thread創(chuàng)建多線程并啟動操作示例
這篇文章主要介紹了Java使用Thread創(chuàng)建多線程并啟動操作,結(jié)合實例形式分析了Java基于Thread類的多線程定義與啟動簡單操作技巧,需要的朋友可以參考下2018-06-06SpringBoot關(guān)閉druid的頁面和添加密碼驗證方式
這篇文章主要介紹了SpringBoot關(guān)閉druid的頁面和添加密碼驗證方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-05-05