在ubuntu中运行java代码时出错
我最近在我的ubuntu服务器上安装了OpenJDK7。 但版本仍显示为:在ubuntu中运行java代码时出错,java,ubuntu,Java,Ubuntu,我最近在我的ubuntu服务器上安装了OpenJDK7。 但版本仍显示为: java version "1.6.0_24" OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-1ubuntu0.12.04.1) OpenJDK Server VM (build 20.0-b12, mixed mode) 如果我尝试运行java程序,我会得到以下异常: Exception in thread "main" java.lang.Un
java version "1.6.0_24"
OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-1ubuntu0.12.04.1)
OpenJDK Server VM (build 20.0-b12, mixed mode)
如果我尝试运行java程序,我会得到以下异常:
Exception in thread "main" java.lang.UnsupportedClassVersionError: hello : Unsupported major.minor version 51.0
这是使用较高的jdk编译程序并尝试在较低的jdk中运行的结果。
我怎样才能纠正这个问题
编辑:但当我使用javac-version时,我会得到javac1.7.0\u09作为响应。将源代码移到ubuntu框上并重新编译?将源代码移到ubuntu框上并重新编译?听起来像: 1) 您已经安装了多个Java版本(这完全可以做到!)。。。而且 2) “javac”正在获取正确的版本。。。但“java”正在采用另一种版本 解决方案: 例如,请查看以下链接: 听起来像: 1) 您已经安装了多个Java版本(这完全可以做到!)。。。而且 2) “javac”正在获取正确的版本。。。但“java”正在采用另一种版本 解决方案: 例如,请查看以下链接:
可能新安装的JDK位于另一个目录中,该目录不属于$PATH(非常常见)。我会做一个find/-name“javac”,看看找到了多少条目
您可能会发现不止一个。可能新安装的JDK位于另一个目录中,该目录不属于$PATH(非常常见)。我会做一个find/-name“javac”,看看找到了多少条目
你可能会发现不止一个。有一个javac标志告诉它要编译,这样它才能与较低版本兼容。有一个javac标志告诉它要编译,这样它才能与较低版本兼容。我确实重新编译了它,但它不起作用。为什么在安装open jdk 7时,我的jdk版本没有改变。51.0版是否表明其符合jdk 7。但是,当我使用javac-version时,我得到了javac1.7.0 ,我重新编译了它,但它不工作。为什么我的jdk版本在安装openjdk7时没有改变呢。51.0版是否表明其符合jdk 7。但是当我使用javac-version时,我得到了javac1.7.0。我很高兴,很高兴能帮上忙:)谢谢。工作起来很有魅力。我很高兴——很高兴它起了作用:)
# EXAMPLE:
$ update-java-alternatives -l
java-1.6.0-openjdk 1061 /usr/lib/jvm/java-1.6.0-openjdk
java-1.7.0-openjdk-amd64 1051 /usr/lib/jvm/java-1.7.0-openjdk-amd64
$ sudo update-java-alternatives -s java-1.7.0-openjdk-amd64