0

我尝试在本地服务器 GlasshFish 3 中部署一个简单的“Hello Word”,但在部署时控制台会打印此消息

[#|2013-01-15T15:00:02.458+0100|SEVERE|glassfish3.1.2|
javax.enterprise.system.tools.admin.org.Exception while deploying the app
[HelloWorldEJB] :UnsupportedClassVersionError: Class ejb_other.PlaceAuctionItemBean 
as unsupported major or minor version numbers, which are greater than those found 
in the Java Runtime Environment version 1.6.0_27|#]

我的 JAVA_HOME 有 java 版本 1.6.0_27(它指的是 _C:\Program Files\Java\jdk1.6.0_27_),我的 Eclipse (indigo) 项目是指 java 1.6.0_27。我认为(我不知道如何验证) GlasshFish 指的是 JAVA_HOME。

在我的电脑(Windows 7)中,我发现了 2 个包含 java.exe的目录:

  • C:\Windows\SysWOW64 >java -version -->>java 版本“1.6.0_29”
  • C:\Windows\System32 >java -version -->>java 版本“1.6.0_27”

我发现了有关此异常的更多讨论(fe thisthis),但我需要针对 Eclipse/Glasshfish 更具体的内容,因为我无法解决。我看到JVM对于编译和执行是一样的。

后脚本

我添加了关于我声明 JVM 的位置的屏幕截图:它始终是 1.6。一:编译器 二:构建路径eclipse 三:环境变量

我在哪里可以看到我使用 java 7 编译或使用另一个 JVM 运行?

4

2 回答 2

0

ejb_other.PlaceAuctionItemBean显然是为 Java 7 编译的,如果您在 Java 6 JVM 中运行它,它将无法工作。

于 2013-01-15T14:53:15.670 回答
0

找到解决方案

还有一个地方可以设置编译器的选项:

如何让 eclipse 为 Java 使用不同的编译器版本?

于 2013-01-18T10:52:54.813 回答