java.lang.ClassFormatError 问题

20110801 01:24:50 ERROR - StandardContext.listenerStart(3768) | Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener
org.springframework.beans.factory.CannotLoadBeanClassException: Error loading class [com.xxx.business.services.impl.PaymentPresentServiceImpl] for bean with name 'paymentPresentServiceImpl' defined in ServletContext resource [/WEB-INF/applicationContext-services.xml]: problem with class file or dependent class; nested exception is java.lang.ClassFormatError: (com/xxx/business/services/impl/PaymentPresentServiceImpl) bad magic number at offset=0
Caused by:
[color=red]java.lang.ClassFormatError: (com/xxx/business/services/impl/PaymentPresentServiceImpl) bad magic number at offset=0[/color]

操作系统:AIX 5.3
应用服务器:Apache Tomcat 5.5.27
JDK版本:1.5.0

bash-3.00# java -version
java version "1.5.0"
Java(TM) 2 Runtime Environment, Standard Edition (build pap32dev-20060511 (SR2))
IBM J9 VM (build 2.3, J2RE 1.5.0 IBM J9 2.3 AIX ppc-32 j9vmap3223-20060504 (JIT enabled)
J9VM - 20060501_06428_bHdSMR
JIT - 20060428_1800_r8
GC - 20060501_AA)
JCL - 20060511a

:cry: ???

9个回答

用AIX的jdk重新编译一下吧

感觉像这个类编译出了问题,文件头就出错了?
mark一下,没遇到过这个问题

这个类是不是加密过了啊 以前做加密的时候 就会出现这个错误 也就是编译后的class不是有效的字节码 如果没做加密的话 有可能是class里面的内容被修改了

提示是说类格式化错误 就是编译错误 好像说 有个number 类型格式化出错

应该是class加载时出现了问题,是不是class中的类型没有配置好啊。没遇到过这种问题。

class文件不符合class文件的格式,class文件的头标识数字不对,找个服务器的相似环境,重新编译吧

有没有使用混淆器?

class的版本有问题,把整个项目重新打包一下,试试。

编译环境也是java version "1.5.0" 版本吗?会不会是编译器是更高的版本导致的问题?

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问