上午把本地调试好的微信应用部署到sae上,结果访问503错误。关键日志:
----------------------------------------------------
org.eclipse.jetty.servlet.servletholder$1: org.springframework.beans.factory.beancreationexception: error creating bean with name 'org.springframework.web.servlet.mvc.annotation.defaultannotationhandlermapping#0': initialization of bean failed; nested exception is org.springframework.beans.factory.cannotloadbeanclassexception: error loading class [winpm25.controller.wechatcontroller] for bean with name 'wechatcontroller' defined in file [/data1/jetty_work/919/winpm25/jetty-0.0.0.0-13126-winpm25.war-_2_winpm25-any-/webapp/web-inf/classes/winpm25/controller/wechatcontroller.class]: problem with class file or dependent class; nested exception is java.lang.unsupportedclassversionerror: winpm25/controller/wechatcontroller : unsupported major.minor version 51.0
sae使用的jdk版本是1.6,我在本地使用的是jdk1.7,在编辑器中更改 java compiler 版本,重新编译后,打包上传即可。
注意,即使你项目使用的jdk 1.6,但是编译版本如果是1.7,那么仍然会出现这个错误。
major.minor version,它相当于一个软件的主次版本号,只是在这里是标识的一个java class的主版本号和次版本号。
不同的jdk版本使用的major.minor不同,所以会导致这个错误。