小编给大家分享一下如何解决Java找不到或无法加载主类及编码错误的问题,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
成都创新互联是一家成都做网站、成都网站建设,提供网页设计,网站设计,网站制作,建网站,按需定制开发,网站开发公司,从2013年开始是互联行业建设者,服务者。以提升客户品牌价值为核心业务,全程参与项目的网站策划设计制作,前端开发,后台程序制作以及后期项目运营并提出专业建议和思路。
先给出具体代码(当前目录为: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 窗口运行时出现“找不到或无法加载主类”问题:
D:\pro>javac TestJava.java D:\pro>java TestJava 错误: 找不到或无法加载主类 TestJava
出现这种问题的主要原因是程序中有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)自动创建包的目录:
运行代码:
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窗口运行时出现乱码问题:
因为我们的系统大多是中文系统,而不少编程软件都是英文编译环境,所以,当运行含有中文的代码时,容易出现乱码问题,这时候需要改变代码的编码就行了。
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!!
从上面的代码也可以看出来,当程序既带有包,且还编码不对时,我们也可以一次性解决。
以上是“如何解决Java找不到或无法加载主类及编码错误的问题”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!