【发布时间】:2010-11-28 17:26:56
【问题描述】:
我试图在 Mac OSX 上编译引用第三方 JAR 的 Grails 应用程序。虽然我系统的 JRE 和 JDK 设置为 Java 1.6,但我总是得到一个 Compilation error: java.lang.UnsupportedClassVersionError: Bad version number in .class file
访问 JAR 中的类时。此外,在测试现有 Grails 应用程序时,应用程序的默认统计信息显示它使用 Java 1.6 运行。所以我真的没有比尝试更改 Eclipse 中的 Java 设置更多的想法 - 我认为这很愚蠢,因为我没有使用 Eclipse 来开发这个应用程序 - 但是瞧 - 现在我的应用程序在命令上的编译线路工作得很好!
谁能解释一下 Eclipse 在幕后做了什么? 我之前手动设置了 JAVA_HOME 没有效果。
【问题讨论】:
-
> 我刚刚更改了 Exclip 中的默认 JRE:如果您指的是不应该有任何副作用的声明的“已安装 JRE”(除了重新编译 Eclipse 中引用的现有项目......但是你说你没有?那么为什么首先打开 Eclipse?)
-
打开 Eclipse(以及在 Eclipse 中进一步开发)是我的最后一个想法,因为 env var 在 eclipse 中的处理方式不同 - 但我什至没有想到在 Eclipse 中编译它 - 我只是将 Eclipse 中的默认 JRE 设置更改为 1.6(命令行 JAVA_HOME 之前已经是 1.6),然后尝试(没有太大希望)再次在命令行上编译它 - 它工作正常。我无法解释自己。