问题:EditPlus提示错误:找不到或无法加载主类。

原因:换了另外一台电脑,忘了什么时候环境变量被误删了

解决问题:

1.检查文件名和public修饰的类名是否一致。

2.文件查看时,有没有隐藏文件扩展名。(选中,显示文件扩展名)

3.确定有main函数

class Hello3 {
    public static void main(String[] args) {
        System.out.println("Hello World!");
    }
}

4.带包名

有报名的时候,编译命令是

javac -d . HiveJdbcClient.java

这里在当前目录会生成一个 test目录,里面就是 HiveJdbcClient.class 文件

运行的时候命令:

java test.HiveJdbcClient

5.依赖其他jar的运行

依赖了某个jar 包,在编译和运行时也要加上依赖的jar包。需要注意的是,使用 java -cp的时候:

5.1:在Linux下面ClassPath前面是一个点号加一个冒号

5.2 :在Windows下面ClassPath前面是一个点号加一个分号

编译:

javac -cp .;D:\ochadoop4.0.1\hive-0.13.1-cdh5.2.1-och4.0.1\user_lib\hive--jdbc-0.13.1-cdh5.2.1.jar HiveJdbcClient.java

运行:

java -cp .;D:\ochadoop4.0.1\hive-0.13.1-cdh5.2.1-och4.0.1\user_lib\hive-jdbc-0.13.1-cdh5.2.1.jar HiveJdbcClient

6.检查EditPlus编译与执行快捷键的设置

(用记事本的,出现编译通过,执行不过的问题,主要可能是在环境变量配置出现问题)

用EditPlus,我之前自己设置了快捷键。先检测这里有没有出错:(按照如下两个图配置)

 

 

 

 

 7.检查PATH和CLASSPATH

7.1:检查JAVA_HOME

(要有JAVA_HOME的,以后用不同的jdk版本,也不用去改动PATH)

7.2 :检查PATH

7.3:检查CLASSPATH

(这个我自认为没有配错,以前都好用的,不知道什么时候给更改了)

必须是如下:

.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\toos.jar;

 问题解决了。

解决方法中:1-6是我由这次问题想到的进行补充的,7是我问题解决的问题。

 

发表评论