Java找不到或無法加載主類及編碼錯誤問題的解決方案
先給出具體代碼(當前目錄為: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即包的存在。所以,我們有兩種方法對包進行處理。
(1)手動新建包的目錄:
如在當前目錄下新建:(d:\pro)–>org–>test
然后把編譯生成的TestJava.class文件移動到d:\pro\org\test目錄下,
此時再運行java org.test.TestJava
就可以輸出正確結果了。
D:\pro>javac TestJava.java
D:\pro>java org.test.TestJava
Hello World!!!
你好,Java!!
(2)自動創(chuàng)建包的目錄:
運行代碼:
javac -d . TestJava.java java org.test.TestJava
(注意:”-d . “這個點的前面是有空格的,否則還是運行還是有問題的。)也能輸出正確結果:
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)境,所以,當運行含有中文的代碼時,容易出現(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!!
從上面的代碼也可以看出來,當程序既帶有包,且還編碼不對時,我們也可以一次性解決。
總結
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。如果你想了解更多相關內(nèi)容請查看下面相關鏈接
相關文章
Springboot中useGeneratedKeys用法小結
本文主要介紹了Springboot中useGeneratedKeys用法小結,useGeneratedKeys?是 MyBatis 框架中的一個參數(shù),用于指定是否允許 JDBC 支持自動生成主鍵,感興趣的可以了解一下2024-09-09如何在SpringBoot 中使用 Druid 數(shù)據(jù)庫連接池
這篇文章主要介紹了SpringBoot 中使用 Druid 數(shù)據(jù)庫連接池的實現(xiàn)步驟,幫助大家更好的理解和學習使用SpringBoot,感興趣的朋友可以了解下2021-03-03Java實現(xiàn)用Freemarker完美導出word文檔(帶圖片)
這篇文章主要介紹了Java實現(xiàn)用Freemarker完美導出word文檔(帶圖片),具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-07-07MyBatis-Puls插入或修改時某些字段自動填充操作示例
這篇文章主要為大家介紹了MyBatis-Puls插入或修改時某些字段自動填充操作示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-12-12Java使用Thread創(chuàng)建多線程并啟動操作示例
這篇文章主要介紹了Java使用Thread創(chuàng)建多線程并啟動操作,結合實例形式分析了Java基于Thread類的多線程定義與啟動簡單操作技巧,需要的朋友可以參考下2018-06-06