`

java.lang.UnsupportedClassVersionError问题调试

阅读更多
java.lang.UnsupportedClassVersionError: com/sand/mcs/pub/core/Publish : Unsupported major.minor version 51.0 (unable to load class com.sand.mcs.pub.core.Publish)
        at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2908)
        at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1173)
        at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1681)
        at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1559)
        at com.sand.smp.server.core.util.CT.<clinit>(CT.java:610)
        at com.sand.smp.server.core.svc.MutilChannelHelpSvc.calMonitor(MutilChannelHelpSvc.java:86)
        at com.sand.smp.server.core.svc.impl.MutilChannelSvcImpl.walletStatQuery(MutilChannelSvcImpl.java:2869)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
        at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
        at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
        at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
        at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:91)
        at com.sand.smp.server.core.monitor.MonitorAspect.doAround(MonitorAspect.java:28)
        at sun.reflect.GeneratedMethodAccessor127.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)


看报错信息,是因为使用的jar包版本不对。这个51.0是什么呢?

  JDK不同的版本,编译出的class文件是不同的。通过查看分析class文件前几个字节,可以找到对应的关系,详细的参考官方,细微的版本之间可能有差异:
J2SE 7 = 51 (0x33 hex),
J2SE 6.0 = 50 (0x32 hex),
J2SE 5.0 = 49 (0x31 hex),
JDK 1.4 = 48 (0x30 hex),
JDK 1.3 = 47 (0x2F hex),
JDK 1.2 = 46 (0x2E hex),
JDK 1.1 = 45 (0x2D hex).


查看jar包的配置文件:



解决方式:
修改项目编译jre版本为1.7.0_79,重新打war包发布,问题解决。
  • 大小: 68.4 KB
分享到:
评论

相关推荐

    java异常详解

    - **`java.lang.UnsupportedClassVersionError`**:当JVM版本不支持类文件版本时抛出。 - **`java.lang.VirtualMachineError`**:当JVM出现严重错误时抛出,如内存损坏。 了解并掌握这些异常及其处理方法对于编写...

    jeecms源码级安装使用文档

    4. **集成开发环境(IDE)**:推荐使用Eclipse或IntelliJ IDEA等Java开发工具,便于代码管理和调试。 接下来是Jeecms的安装步骤: 1. **解压Jeecms源码**:下载并解压`jeecms-3.0.4-final-src.zip`,这将包含整个...

    dextojar与baksmali

    逆向工程,即对已编译的代码进行分析,理解其内部工作原理,是黑客常用的技术手段,但也被开发者用于调试和优化。在这个领域,"dextojar" 和 "baksmali" 是两个关键的工具,它们主要用于Android应用的逆向工程过程。...

    java异常解决方案.docx

    * java.lang.UnsupportedClassVersionError: Bad version number in .class file + 解决方案:检查 Java 的版本是否正确,是否存在版本不兼容的问题,尝试使用 compatible 的 Java 版本来解决问题。 四、JSP 异常...

    处理MyEclipse中出现的问题.txt

    在使用MyEclipse进行Java开发时,用户可能会遇到各种各样的问题,其中较为常见的一个问题是与JDK版本不兼容导致的`java.lang.UnsupportedClassVersionError`错误。本文将详细介绍如何解决此问题,并提供具体的步骤来...

    java程序调试错误收集

    - **问题描述**:在部署或编译项目时遇到`java.lang.UnsupportedClassVersionError: Bad version number in .class file`异常。 - **解决方案**: - 检查当前使用的JDK版本是否与项目编译时所用的JDK版本一致。 - ...

    Java程序调试与错误收集--非代码引起的报错

    在Java应用部署过程中,如果遇到`java.lang.UnsupportedClassVersionError: Bad version number in .class file`这样的异常,通常是因为当前运行环境(如MyEclipse中使用的JDK版本)与编译时使用的JDK版本不一致。...

    java 异常总结

    ### Java异常总结与详解 #### 引言 在Java编程中,异常处理是软件开发过程中不可或缺的一部分。良好的异常处理能够帮助我们及时发现并...此外,合理地利用日志记录来跟踪异常的发生也是提升调试效率的重要手段之一。

    ssh框架错误总结

    在使用JUnit/StrutsTest时,可能会遇到java.lang.UnsupportedClassVersionError: junit/framework/TestListener (Unsupported major.minor version 49.0)错误。 解决方法:根据JDK版本选择合适的JUnit版本。如果...

    tomcat:bad version number in class file的解决方法

    在 Tomcat 启动时,出现 "java.lang.UnsupportedClassVersionError: Bad version number in .class file" 的错误。这是因为 Java 编译版本和运行时版本不兼容所引起的。当我们编译 Java 代码时,编译器会生成 class ...

    java异常总结.pdf

    在Java中,异常被组织成一个层次结构,根类是`java.lang.Throwable`,它有两个主要的子类:`Error`和`Exception`。`Error`通常表示系统级的错误,比如内存不足(`OutOfMemoryError`)或虚拟机错误(`...

    java所有运行时异常以及错误.

    首先,运行时异常是程序在执行过程中可以预见的异常,它们属于`java.lang.Throwable`的子类,并且通常可以通过代码进行预防或捕获。下面列举了一些常见的运行时异常: 1. **算术异常类:ArithmeticException** - 当...

    Eclipse的使用

    确保编译器的级别与项目的Java Build Path中的库相匹配,否则可能会遇到`UnsupportedClassVersionError`错误。 在编写代码时,类名、包名和访问权限是必不可少的部分。访问权限修饰符包括public、private、...

    Eclipse 工具的使用

    2. **解决版本不兼容问题**:如果遇到 `java.lang.UnsupportedClassVersionError` 错误,通常是由于编译器版本与 JRE 版本不一致导致的。此时需要检查 Eclipse 的 JRE 设置是否正确。 3. **颜色与字体设置**:在...

    javaSE基础笔记

    - 例如:`import static java.lang.System.out;` - **可变参数**: - 方法参数列表中可以定义一个或多个可变参数,这些参数会被封装成数组传递。 - 示例:`public static int add(int x, int... args) { }` - **...

Global site tag (gtag.js) - Google Analytics