相关疑难解决方法(0)

如何修复java.lang.UnsupportedClassVersionError:不支持的major.minor版本

我正在尝试使用Notepad ++作为我的一体化工具编辑,运行,编译等.

我安装了JRE,并且已将路径变量设置为.../bin目录.

当我在Notepad ++中运行"Hello world"时,我收到以下消息:

java.lang.UnsupportedClassVersionError: test_hello_world :
 Unsupported major.minor version 51.0
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClassCond(Unknown Source)
       .........................................
Run Code Online (Sandbox Code Playgroud)

我认为这里的问题是版本问题; 某些版本的Java可能是旧的或太新的.

  1. 我如何解决它?
  2. 我应该安装JDK,并将我的路径变量设置为JDK而不是JRE吗?
  3. .../binJRE或JDK中的变量有什么区别?

java jvm incompatibility unsupported-class-version

1532
推荐指数
25
解决办法
182万
查看次数

Eclipse无法找到/加载主类

我的Eclipse(Indigo)运行得很好.我创建了一个简单的类Hello.它放在cont文件夹中的包中ch13.但是,当我尝试从Eclipse运行它时,我从Java虚拟机启动器获取信息:

Could not find the main class: cont.Hello.  
Run Code Online (Sandbox Code Playgroud)

我试图从这个包运行其他类,它们运行得很好(这是之前存在的类).但是,我在这个包中创建的任何新类都存在这些问题.实际上我在Eclipse中创建的任何新类都遇到了这个问题.我决定从命令行检查它是如何工作的.似乎问题仍然存在 - 我得到同样的错误.我检查了路径,它是C:\Program Files\Java\jdk1.7.0_02\bin,这是正确的(注意其他类从Eclipse运行就好了).我试图运行,java -cp . Hello并开始产生一些错误java.lang.NoClassDefFoundError: Hello (wrong name: cont/Hello).代码本身很简单:

package cont;

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

}
Run Code Online (Sandbox Code Playgroud)

我如何修复它以便我的类仍在Eclipse下运行?

java eclipse

30
推荐指数
4
解决办法
11万
查看次数

Mac OS X Mavericks中的多个Java安装

从Oracle下载了Mac OS X 10.9.1的JDK,但我不得不再次从Apple网站安装另一个Java,因为我无法用它启动eclipse.

这是我提到的两页.

现在我的计算机上安装了三个java二进制文件.

安装A.

/System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java

java version "1.7.0_51"
Java(TM) SE Runtime Environment (build 1.7.0_51-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.51-b03, mixed mode)
Run Code Online (Sandbox Code Playgroud)

安装B.

/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin/java

java version "1.6.0_65"
Java(TM) SE Runtime Environment (build 1.6.0_65-b14-462-11M4609)
Java HotSpot(TM) 64-Bit Server VM (build 20.65-b04-462, mixed mode)
Run Code Online (Sandbox Code Playgroud)

安装C.

/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/bin/java

java version "1.7.0_51"
Java(TM) SE Runtime Environment (build 1.7.0_51-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.51-b03, mixed mode)
Run Code Online (Sandbox Code Playgroud)

我发现我可以轻松删除安装C,但我不确定这是否正常.

当我从命令行调用java时,它指向安装A.

java -version …
Run Code Online (Sandbox Code Playgroud)

java eclipse macos osx-mavericks

13
推荐指数
2
解决办法
3万
查看次数