命令行java 找不到或无法加载主类

命令行java 找不到或无法加载主类

最近在复习java的基础知识,其中有个练习是在终端使用命令行来编译和运行java程序,大致的步骤如下:
1.新建HelloWold.java文件

public class HelloWorld{
    public static void main(String[] args){
        System.out.println("java");
    }
}

2.在终端输入 javac HelloWorld.java 成功生成HelloWorld.class文件。
3.在终端输入 java HelloWorld 执行.class文件。

步骤1、2顺利完成,但是在执行第三步时遇到了 提示找不到或无法加载主类 的问题,这个问题折磨了我好久。现在总结下出现这个问题的原因:

1.CLASSPATH 没有配置当前目录即符号‘.’,这一原因解决方案可参考java环境配置。

2.java HelloWorld.class,其实我刚开始报错的原因就是这个(无奈,一直没发现,以为是其他错误造成的)。。java命令 后面直接跟主类名就可以了,不需要加.class 。

3.如果在主类里声明了包,如下例:

package project; //声明了包

public class HelloWorld{
    public static void main(String[] args){
        System.out.println("java");
    }
}

那么在编译的时候,就需要
javac -d . HelloWorld.java //-d 指定放置生成的类文件的位置
java project.HelloWorld //加上包的全名

总结:希望这篇博客能帮初学者解决问题,虽然是一个小小的练习,但是亲自动手去做过,踩过坑后,还是能从中学到很多的。比如我解决这个问题的时候,就配置了N遍环境变量,以后再也不会忘了- - ,这两行命令,其实包含了很多java基础知识,后面还需要补一补这方面的知识,共勉。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值