温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

java程序提示找不到或无法加载主类怎么解决

发布时间:2020-06-26 15:58:52 来源:亿速云 阅读:625 作者:Leah 栏目:编程语言

java程序提示找不到或无法加载主类怎么解决?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

原因:

1.java指令默认在寻找class文件的地址是通过CLASSPATH环境变量中指定的目录中寻找的。

2.我们忽略了package的影响。

解决过程:

第一个问题好解决:

我们直接在CLASSPATH环境变量中加入“.;”即可。“.”的意思是搜索当前目录。

第二个问题看下面分析:

看下面两个类

java程序提示找不到或无法加载主类怎么解决

类A和类B的唯一差别就是没有定义包名。

我们的工程路径是D:\HelloWorld,在HelloWorld文件夹中建立一个src文件夹,类B的源代码文件就放在src中。用javac编译完以后

会在src文件夹中生成NewsManager.class,如下:

java程序提示找不到或无法加载主类怎么解决

把源代码换成类A:

java程序提示找不到或无法加载主类怎么解决

为什么加入了package后就不对了呢?

类A中package的路径是org.will.app.main。按照java规定,我们应该按照package定义的路径来存放源文件,类A应该放入:

src\org\will\app\main下,如下:

java程序提示找不到或无法加载主类怎么解决

然后我们编译执行:

java程序提示找不到或无法加载主类怎么解决

依然有问题,为什么,其实大家再回去看看java的书籍就会发现,一个类的全名应该是包名+类名。类A的全名:org.will.app.main.NewsManager

好的,再试试:

还是不对。为什么?

仔细看,我们在main目录下让java命令去执行org.will.app.main.NewsManager,其实它会以为类的路径是:

D:\HelloWorld\src\org\will\app\main\org\will\app\main\NewsManager,大家看到了吧,路径重复了。

看完上述内容,你们掌握java程序提示找不到或无法加载主类的解决方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI