报错:错误:无法找到或装入主类 Test(不是导包问题,记事本编写的代码)

记事本写的Java程序 错误:无法找到或装入主类

问题描述:

​ 在集成开发环境中程序都能正常运行,突然在记事本中自己写的java程序可以编译,但是运行的时候报这个错误

问题分析

  1. 我java环境已经用了很长时间了都是很正常的,而且又检查了很多遍,我确定以及肯定java环境配的没有任何问题,大家如果不确定环境有没有配好可以先去测测环境 ------排除java环境问题

  2. 仔细检查系统遍历发现问题所在

    系统的Classpath被污染,之前下载Lingo11的时候被自动配成了Lingo11.jar的地址

问题解决

​ 删除系统变量中的 classpath

如果解决了您的问题,期望点个赞~

原因分析

​ 为什么删除了classpath就解决了问题? 这里我们要了解一下JVM的运行机制,jvm在运行java文件的字节码文件的时候会首先去系统变量中的classpath中寻找, 之前我们写死配置成了其他的位置肯定jvm找不到字节码文件,网上还有一个解决办法,但是我认为并不是很好,就是在classpath全面加上点和英文的分号 .; 因为这样会让jvm先去当前的目录下寻找,如果没找到再到后面的去寻找,但是我并不推荐这么做,这样也会导致classpath的污染,也就是污染整个系统变量,所以我建议把这个删除,然后jvm就是使用默认的去当前目录下寻找字节码文件!可能是之前下载的lingo太老了,06年的软件所以导致环境污染。

posted @ 2020-09-04 17:50  贝加尔湖畔╭  阅读(404)  评论(0编辑  收藏  举报