java程序无法启动:Unsupported major.minor version 51.0

今天在sae上部署了一个项目,结果总是出现503错误:service unavailable,然后jvm出现了一大串错误日志,如下

JAVA_SAE_Fatal_error: Failed startup of context c.s.s.w.SaeWebAppContext{/1/hechengtupian,file:/data1/jetty_work/509/hechengtupian/jetty-0.0.0.0-10446-hechengtupian.war-_1_hechengtupian-any-/webapp/},/data1/www/htdocs/509/hechengtupian/1/hechengtupian.warorg.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping#0': Invocation of init method failed; nested exception is org.springframework.beans.factory.CannotLoadBeanClassException: Error loading class [com.image.controller.ImageController] for bean with name 'imageController' defined in file [/data1/jetty_work/509/hechengtupian/jetty-0.0.0.0-10446-hechengtupian.war-_1_hechengtupian-any-/webapp/WEB-INF/classes/com/image/controller/ImageController.class]: problem with class file or dependent class; nested exception is java.lang.UnsupportedClassVersionError: com/image/controller/ImageController : Unsupported major.minor version 51.0|Related cause: org.springframework.beans.factory.CannotLoadBeanClassException: Error loading class [com.image.controller.ImageController] for bean with name 'imageController' defined in file [/data1/jetty_work/509/hechengtupian/jetty-0.0.0.0-10446-hechengtupian.war-_1_hechengtupian-any-/webapp/WEB-INF/classes/com/image/controller/ImageController.class]: problem with class file or dependent class; nested exception is java.lang.UnsupportedClassVersionError: com/image/controller/ImageController : Unsupported major.minor version 51.0	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1486)	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:524)	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowir yq30.javaruntime 

然后我就在sae官方论坛上发帖,然后管理员一句话点拨了我:Unsupported major.minor version 51.0!jdk版本不对,sae支持的jdk是1.6。

major.minor version,它相当于一个软件的主次版本号,只是在这里是标识的一个Java Class的主版本号和次版本号。

错误原因找到了,需要使用java6编译项目,才可以在sae平台上正常运行。接下来就是如何解决问题了。

首先你要下载java6,然后安装上,放心吧java6可以和java7同时安装在电脑上,不用担心冲突的问题,只要安装的时候目录不哟啊冲突就好了。

然后打开eclipse,选择preferences->java->install jres 点击 add,然后把选择standerd VM,配置好路径,然后把java6选为默认。

然后选择java->complier 把编译版本修改为1.6,这样就可以了。

这时候可能你自己的项目在本地运行的时候会起不来,然后显示错误:Project facet Java version 1.7 is not supported.这时候你需要调整你的项目的tomcat运行的java版本,方法也很简单:右键项目->propertiy->project facets ,看到那个java 1.7了吗?对就是它,把它修改成1.6,现在你的项目就可以运行起来了。


最后不得不吐槽一下sae和bae这两个云平台:sae让我很不爽的一点是java中svn功能太弱了,svn要上传的是war包,而不是项目文件,每次都要上传那么多文件,累不累啊,而且这样根本没有使用svn的意义嘛。而bae让我不爽的一点是图片处理的能力太弱了,禁用了awt.image包中的函数,必须使用bae自己的服务,结果bae自己的图片处理能力可以说几乎为0,只有最基本的功能。

吐槽归吐槽,在这里希望国内云平台做的越来越好吧,至少sae和bae现在基本上都是免费的,这点还是比较赞的。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值