线程“main”中的异常java.lang.UnsupportedClassVersionError:danbikel / parser / Trainer(不支持的major.minor版本50.0)

时间:2011-03-30 04:48:50

标签: java

我正在尝试运行一个用Java构建的解析器,但每次我尝试使用该类时,都会出现上述错误(“线程中的异常”主“java.lang.UnsupportedClassVersionError:danbikel / parser / Trainer(不支持的major.minor版本50.0)“)。

从我读过的内容来看,这可能是用于编译和运行代码的Java版本之间不匹配的问题;但我确保我的JAVA_HOME环境设置为1.6版本,这是解析器安装指南推荐的版本。

服务器上安装了旧版本的Java,但我对此无能为力。我还能做些什么来解决这个错误吗?

6 个答案:

答案 0 :(得分:8)

如果您使用的是Debian派生的发行版(例如Ubuntu),请使用sudo update-alternatives --config java并设置您可能要使用的版本。

答案 1 :(得分:5)

除了正确设置JAVA_HOME(您已经完成)之外,请确保您正在执行java可执行文件的正确版本。例如,在Debian或Ubuntu上,如果/usr/lib/jvm/java-6-openjdk/jre/bin/java指向错误的版本,则直接执行/usr/bin/java

您可以使用-version选项验证您正在使用的启动器的版本。尝试java -version/usr/lib/jvm/java-6-openjdk/jre/bin/java -version,看看输出是否有所不同。

答案 2 :(得分:4)

确保将JAVA_HOME设置为特定的Java安装并不一定。

如果您有关于服务器和配置环境的更多信息,那将会很有帮助。

如果您想确保使用正确的版本,我会确保您的PATH环境包含${JAVA_HOME}/bin:${PATH}

答案 3 :(得分:3)

即使您已将JAVA_HOME设置为1.6,您的Java版本仍可能是1.5

在控制台上输入java -version,查看它打印的版本。

答案 4 :(得分:0)

我也遇到了这个问题,我发现自己在.bash_profile中设置了自定义的JAVA_HOME值后就解决了这个问题。

我对此进行了评论,加载了一个新的控制台,现在我的项目正在构建。

答案 5 :(得分:0)

对我而言,这有效: 1)安装JRE 7 2)安装JDK 3)转到项目属性> Java编译器。将编译器合规性级别设置为1.7。一旦按“应用”,它将要求您重建程序。对于大多数应该这样做的人。 对于其余部分,请在“属性”窗口的底部显示警告部分(标有黄色“!”标记),要求搜索兼容的JRE。 选择配置已安装的JRE或设置环境变量。一旦完成,你就可以去了!