报错:错误:无法找到或装入主类 Test(不是导包问题,记事本编写的代码)
记事本写的Java程序 错误:无法找到或装入主类
问题描述:
在集成开发环境中程序都能正常运行,突然在记事本中自己写的java程序可以编译,但是运行的时候报这个错误
问题分析
-
我java环境已经用了很长时间了都是很正常的,而且又检查了很多遍,我确定以及肯定java环境配的没有任何问题,大家如果不确定环境有没有配好可以先去测测环境 ------排除java环境问题
-
仔细检查系统遍历发现问题所在
系统的Classpath被污染,之前下载Lingo11的时候被自动配成了Lingo11.jar的地址
问题解决
删除系统变量中的 classpath
如果解决了您的问题,期望点个赞~
原因分析
为什么删除了classpath就解决了问题? 这里我们要了解一下JVM的运行机制,jvm在运行java文件的字节码文件的时候会首先去系统变量中的classpath中寻找, 之前我们写死配置成了其他的位置肯定jvm找不到字节码文件,网上还有一个解决办法,但是我认为并不是很好,就是在classpath全面加上点和英文的分号 .; 因为这样会让jvm先去当前的目录下寻找,如果没找到再到后面的去寻找,但是我并不推荐这么做,这样也会导致classpath的污染,也就是污染整个系统变量,所以我建议把这个删除,然后jvm就是使用默认的去当前目录下寻找字节码文件!可能是之前下载的lingo太老了,06年的软件所以导致环境污染。