JAVA编译器jdk版本与项目工程jdk版本不一致导致java.lang.NoSuchMethodError

    当低版本IDE导入高版本IDE开发的JAVA项目时,可能会由于低版本IDE的java编译器对高版本JDK不支持,导致

成都创新互联是专业的兴平网站建设公司,兴平接单;提供成都网站建设、做网站,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行兴平网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!

项目运行报错:java.lang.NoSuchMethodError。

    具体报错信息如下示例:

[19:16:21:675] [INFO] - cn....TaskJob.cleanInvalidMonitorData(Call...TaskJob.java:127) 

Exception in thread "Thread-4003" java.lang.NoSuchMethodError: cn....Task.access$000(Lcn/com/.../...Task;)Ljava/util/Map;

        at cn.....task....Task$Run...Task.run(...Task.java:231)

        at java.lang.Thread.run(Thread.java:748)

    导致项目运行报错的具体原因是:

IDE,例如MyEclipse,windows-->preferences-->Java-->Compiler-->Compiler compliance level-->JDK 1.8

JAVA 编译器jdk版本与项目工程jdk版本不一致导致java.lang.NoSuchMethodError

项目中的jdk版本查看:右键-->BuildPath-->Configure Build Path-->Order and Export-->JDK 1.6

JAVA 编译器jdk版本与项目工程jdk版本不一致导致java.lang.NoSuchMethodErrorJAVA 编译器jdk版本与项目工程jdk版本不一致导致java.lang.NoSuchMethodError

由上图所示,是项目中的JDK版本与JAVA编译器的版本不一致,导致项目运行报错:java.lang.NoSuchMethodError

      解决方法很简单,需要将IDE的JAVA编译器版本修改为项目JDK版本,或者升级项目的JDK版本亦可,需要注意的是

低版本不支持高版本的java编译器,如果必须升级Java 编译器,则必须升级IDE开发平台的版本。


当前标题:JAVA编译器jdk版本与项目工程jdk版本不一致导致java.lang.NoSuchMethodError
文章源于:http://azwzsj.com/article/pceohc.html