[Java编译运行] 错误:找不到或无法加载主类HelloWorld

[Java编译运行] 错误:找不到或无法加载主类HelloWorld

  1. 问题描述
    在本地用记事本编写Java程序HelloWorld.java:
    源代码:
class Heloworld{
	public static void main(String[] args){
	System.out.println("Hello,world!!!");
	}
}

进入到源码所在的目录:
在这里插入图片描述编译源码:
在这里插入图片描述
这里没有报错,编译成功,生成了.class字节码文件
在这里插入图片描述执行运行命令:
在这里插入图片描述
报错!!! 检查发现代码没有语法错误也没有其他问题!

  1. 解决方案
    这里我遇到了一个非常离谱而且又很难发现的问题,尤其对于不够细心的小伙伴来说
    就是classpath环境变量的问题
    这里给出两个解决办法:
    方法1:直接把classpath环境变量删除
    方法2: CLASSPATH路径是否正确,
    正确应为.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\tools.jar
    而我在配置classpath环境变量的时候粗心,把开头的.配置成了,导致无法运行,那我们把他修改过来
    在这里插入图片描述我们再编译执行:
    在这里插入图片描述
    运行成功!
    希望大家在配置环境变量的时候一定要细心一点,尤其像遇到这种错误很难发现

  2. classpath介绍
    classpath:
    直译过来是类路径,是Java环境配置中要设置的一个环境变量,就是.class文件的路径,表示JVM从哪里去寻找要运行的class文件,
    例如:classpath = D:\javacode\java
    表示执行java命令时去D:\javacode\java目录中去找需要被执行的class文件并运行。你配置错了就会出现找不到.class的问题

环境变量(environment variables)一般是指在操作系统中用来指定操作系统运行环境的一些参数,如:临时文件夹位置和系统文件夹位置等。
classpath是javac编译器的一个环境变量。它的作用与import、package关键字有关。
设置Classpath的目的,在于指定类搜索路径,要使用已经编写好的类,前提当然是能够找到它们了,JVM就是通过CLASSPTH来寻找类的.class文件。我们需要把jdk安装目录下的lib子目录中的dt.jar和tools.jar设置到CLASSPATH中,当然,当前目录“.”也必须加入到该变量中。

classpath是javac编译器专用的一个环境变量,作用是告诉Java执行环境,在哪些目录下可以找到您所要执行的Java程序所需要的类或者包。

参考文章

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

~久违~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值