我的开发环境(Mac OS 10.6)使用JDK 1.6,而生产依赖于1.5。目前无法将prod升级到1.6,因此我按照install 1.5 on my machine的步骤进行了操作。但是,在我使用Grails 1.1将正确的JAVA_HOME版本设置为1.5之后,我收到错误消息:
2009-11-12 09:20:34,881 INFO [STDOUT] 09:20:34,881 INFO [[/]] Initializing Spring root WebApplicationContext
2009-11-12 09:20:59,026 INFO [STDOUT] 09:20:59,002 ERROR [ContextLoader] Context
initialization failed org.springframework.beans.factory.BeanCreationException:
Error creating bean with name 'pluginManager' defined in ServletContext
resource [/WEB-INF/applicationContext.xml]: Invocation of init method failed;
nested exception is java.lang.UnsupportedClassVersionError:
Bad version number in .class file
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3729)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4187)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:759)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:739)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524)
这是此forum中列出的类似问题,但设置'grails war -Dtarget.jdk = 1.5'的选项不起作用,我不确定需要哪些文件(以及如何)修改以针对1.5编译项目。 (建议的脚本hack的作者注意到解决方案不是他尝试过的)
我认为Grails 1.1是用1.5编译的。
还可以采取哪些措施来解决此错误?
答案 0 :(得分:4)
grails clean
应该有帮助。