找不到或无法加载主类如何解决?在win10操作系统中我们安装了java软件以及把JDK环境变量配好,编译可以正常通过的情况下运行java就出现了找不到或无法加载主类的错误提示,该怎么办呢?编译正常的话说明变量java-home已经配置的没有问题了。java-home对应的变量值为javac.exe所在的路径,所以问题一般由于:Path变量对应的变量值上或者是新建用户变量classpath上有问题, 或者主函数public static void main(String args[]){}没有写在main这个类中。
解决思路:
1.java指令默认在寻找class文件的地址是通过CLASSPATH环境变量中指定的目录中寻找的。2.package的影响。
关于第一个问题的话我们直接在CLASSPATH环境变量中加入.;即可。.的意思是搜索当前目录
关于第二个问题,我们看下面方法进行操作:
看下面两个类
类A 类B
类A和类B的唯一差别就是没有定义包名。
我们的工程路径是D:HelloWorld,在HelloWorld文件夹中建立一个src文件夹,类B的源代码文件就放在src中。用javac编译完以后
会在src文件夹中生成NewsManager.class,如下
执行如下:
现在我们再把源代码换成类A
为什么加入了package后就不对了呢?
类A中package的路径是org.will.app.main。按照java规定,我们应该按照package定义的路径来存放源文件,类A应该放入:
srcorgwillappmain下,如下:
然后我们编译执行:
依然有问题,为什么,其实大家再回去看看java的书籍就会发现,一个类的全名应该是包名+类名。类A的全名:org.will.app.main.NewsManager
好的,再试试:
还是不对。为什么?
仔细看上面的图,我们在main目录下让java命令去执行org.will.app.main.NewsManager,其实它会以为类的路径是:
D:HelloWorldsrcorgwillappmainorgwillappmainNewsManager,大家看到了吧,路径重复了。
所以,我们应该这样执行:
以上便是小编给大家分享的win10系统java无法加载的解决方法,在配置的时候我们需要信息操作即可解决!
本文来自互联网或AI生成,不代表系统内阁立场。本站不负任何法律责任。