Spring Boot 启动的时候报的错

使用Drools 5.6版本,Spring Boot1.5.8版本,JAVA8版本,Eclipse4.4.2版本。

Google后在Stack上发现一个,中文较少,贴一下。

原因是因为Eclipse不支持Java8编译Drools5.6版本。

解决方案:

给项目添加依赖:

<dependency>
            <groupId>org.eclipse.jdt.core.compiler</groupId>
            <artifactId>ecj</artifactId>
            <version>4.5.1</version>
</dependency>

再次启动,OK

报错内容:

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'knowledgeBase': Invocation of init method failed; nested exception is java.lang.RuntimeException: wrong class format
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:) ~[spring-beans-4.3..RELEASE.jar:4.3..RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:) ~[spring-beans-4.3..RELEASE.jar:4.3..RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:) ~[spring-beans-4.3..RELEASE.jar:4.3..RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory$.getObject(AbstractBeanFactory.java:) ~[spring-beans-4.3..RELEASE.jar:4.3..RELEASE]
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:) ~[spring-beans-4.3..RELEASE.jar:4.3..RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:) ~[spring-beans-4.3..RELEASE.jar:4.3..RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:) ~[spring-beans-4.3..RELEASE.jar:4.3..RELEASE]
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:) ~[spring-beans-4.3..RELEASE.jar:4.3..RELEASE]
... common frames omitted
Caused by: java.lang.RuntimeException: wrong class format
at org.drools.commons.jci.compilers.EclipseJavaCompiler$.findType(EclipseJavaCompiler.java:) ~[drools-compiler-5.6..Final.jar:5.6..Final]
at org.drools.commons.jci.compilers.EclipseJavaCompiler$.findType(EclipseJavaCompiler.java:) ~[drools-compiler-5.6..Final.jar:5.6..Final]
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType(LookupEnvironment.java:) ~[ecj-3.5..jar:na]
at org.eclipse.jdt.internal.compiler.lookup.UnresolvedReferenceBinding.resolve(UnresolvedReferenceBinding.java:) ~[ecj-3.5..jar:na]
at org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveType(BinaryTypeBinding.java:) ~[ecj-3.5..jar:na]
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getTypeFromTypeSignature(LookupEnvironment.java:) ~[ecj-3.5..jar:na]
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getTypeFromVariantTypeSignature(LookupEnvironment.java:) ~[ecj-3.5..jar:na]
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getTypeArgumentsFromSignature(LookupEnvironment.java:) ~[ecj-3.5..jar:na]
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getTypeFromTypeSignature(LookupEnvironment.java:) ~[ecj-3.5..jar:na]
at org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.createMethod(BinaryTypeBinding.java:) ~[ecj-3.5..jar:na]
at org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.createMethods(BinaryTypeBinding.java:) ~[ecj-3.5..jar:na]
at org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.cachePartsFrom(BinaryTypeBinding.java:) ~[ecj-3.5..jar:na]
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.createBinaryTypeFrom(LookupEnvironment.java:) ~[ecj-3.5..jar:na]
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.createBinaryTypeFrom(LookupEnvironment.java:) ~[ecj-3.5..jar:na]
at org.eclipse.jdt.internal.compiler.Compiler.accept(Compiler.java:) ~[ecj-3.5..jar:na]
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType(LookupEnvironment.java:) ~[ecj-3.5..jar:na]
at org.eclipse.jdt.internal.compiler.lookup.UnresolvedReferenceBinding.resolve(UnresolvedReferenceBinding.java:) ~[ecj-3.5..jar:na]
at org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveType(BinaryTypeBinding.java:) ~[ecj-3.5..jar:na]
at org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.resolve(ParameterizedTypeBinding.java:) ~[ecj-3.5..jar:na]
at org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveType(BinaryTypeBinding.java:) ~[ecj-3.5..jar:na]
at org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveTypesFor(BinaryTypeBinding.java:) ~[ecj-3.5..jar:na]
at org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.getExactMethod(BinaryTypeBinding.java:) ~[ecj-3.5..jar:na]
at org.eclipse.jdt.internal.compiler.lookup.Scope.findExactMethod(Scope.java:) ~[ecj-3.5..jar:na]
at org.eclipse.jdt.internal.compiler.lookup.Scope.getMethod(Scope.java:) ~[ecj-3.5..jar:na]
at org.eclipse.jdt.internal.compiler.ast.MessageSend.resolveType(MessageSend.java:) ~[ecj-3.5..jar:na]
at org.eclipse.jdt.internal.compiler.ast.MessageSend.resolveType(MessageSend.java:) ~[ecj-3.5..jar:na]
at org.eclipse.jdt.internal.compiler.ast.Expression.resolve(Expression.java:) ~[ecj-3.5..jar:na]
at org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolveStatements(AbstractMethodDeclaration.java:) ~[ecj-3.5..jar:na]
at org.eclipse.jdt.internal.compiler.ast.MethodDeclaration.resolveStatements(MethodDeclaration.java:) ~[ecj-3.5..jar:na]
at org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolve(AbstractMethodDeclaration.java:) ~[ecj-3.5..jar:na]
at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:) ~[ecj-3.5..jar:na]
at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:) ~[ecj-3.5..jar:na]
at org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.resolve(CompilationUnitDeclaration.java:) ~[ecj-3.5..jar:na]
at org.eclipse.jdt.internal.compiler.Compiler.process(Compiler.java:) ~[ecj-3.5..jar:na]
at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:) ~[ecj-3.5..jar:na]
at org.drools.commons.jci.compilers.EclipseJavaCompiler.compile(EclipseJavaCompiler.java:) ~[drools-compiler-5.6..Final.jar:5.6..Final]
at org.drools.commons.jci.compilers.AbstractJavaCompiler.compile(AbstractJavaCompiler.java:) ~[drools-compiler-5.6..Final.jar:5.6..Final]
at org.drools.rule.builder.dialect.java.JavaDialect.compileAll(JavaDialect.java:) ~[drools-compiler-5.6..Final.jar:5.6..Final]
at org.drools.compiler.DialectCompiletimeRegistry.compileAll(DialectCompiletimeRegistry.java:) ~[drools-compiler-5.6..Final.jar:5.6..Final]
at org.drools.compiler.PackageRegistry.compileAll(PackageRegistry.java:) ~[drools-compiler-5.6..Final.jar:5.6..Final]
at org.drools.compiler.PackageBuilder.compileAll(PackageBuilder.java:) ~[drools-compiler-5.6..Final.jar:5.6..Final]
at org.drools.compiler.PackageBuilder.compileAllRules(PackageBuilder.java:) ~[drools-compiler-5.6..Final.jar:5.6..Final]
at org.drools.compiler.PackageBuilder.addPackage(PackageBuilder.java:) ~[drools-compiler-5.6..Final.jar:5.6..Final]
at org.drools.compiler.PackageBuilder.addPackageFromDecisionTable(PackageBuilder.java:) ~[drools-compiler-5.6..Final.jar:5.6..Final]
at org.drools.compiler.PackageBuilder.addKnowledgeResource(PackageBuilder.java:) ~[drools-compiler-5.6..Final.jar:5.6..Final]
at org.drools.builder.impl.KnowledgeBuilderImpl.add(KnowledgeBuilderImpl.java:) ~[drools-compiler-5.6..Final.jar:5.6..Final]
at org.drools.container.spring.beans.KnowledgeBaseBeanFactory.afterPropertiesSet(KnowledgeBaseBeanFactory.java:) ~[drools-spring-5.6..Final.jar:5.6..Final]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:) ~[spring-beans-4.3..RELEASE.jar:4.3..RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:) ~[spring-beans-4.3..RELEASE.jar:4.3..RELEASE]
... common frames omitted
Caused by: org.eclipse.jdt.internal.compiler.classfmt.ClassFormatException: null
at org.eclipse.jdt.internal.compiler.classfmt.ClassFileReader.<init>(ClassFileReader.java:) ~[ecj-3.5..jar:na]
at org.drools.commons.jci.compilers.EclipseJavaCompiler$.createNameEnvironmentAnswer(EclipseJavaCompiler.java:) ~[drools-compiler-5.6..Final.jar:5.6..Final]
at org.drools.commons.jci.compilers.EclipseJavaCompiler$.findType(EclipseJavaCompiler.java:) ~[drools-compiler-5.6..Final.jar:5.6..Final]
... common frames omitted

java.lang.RuntimeException: wrong class format Caused by: org.eclipse.jdt.internal.compiler.classfmt.ClassFormatException: null的更多相关文章

  1. Hadoop-1,web页面调用报无hbase.jar包【以解决】 2,报java.lang.NoSuchMethodError: org.eclipse.jdt.internal.compiler.CompilationResult.getProblems()[Lorg/eclipse/jdt/core/compiler/IProblem;【以解决】

    1:web页面调用报无hbase.jar包 本来java文件就没有问题,但是jsp一调用那个java文件里的方法就报错,报的无hadoop/hbase相关报的问题. 主要解决方法是: 复制hbase/ ...

  2. Caused by: java.net.ConnectException: Connection refused/Caused by: java.lang.RuntimeException: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

    1.使用sqoop技术将mysql的数据导入到Hive出现的错误如下所示: 第一次使用命令如下所示: [hadoop@slaver1 sqoop--cdh5.3.6]$ bin/sqoop impor ...

  3. sqoop导出hive数据到mysql错误: Caused by: java.lang.RuntimeException: Can't parse input data

    Sqoop Export数据到本地数据库时出现错误,命令如下: sqoop export \ --connect 'jdbc:mysql://202.193.60.117/dataweb?useUni ...

  4. hive脚本出现Error: java.lang.RuntimeException: Error in configuring object和Caused by: java.lang.IndexOutOfBoundsException: Index: 9, Size: 9

    是在reduce阶段报的错误,详细错误信息是 朱传豪 19:04:48 Diagnostic Messages for this Task: Error: java.lang.RuntimeExcep ...

  5. Caused by: java.lang.RuntimeException: java.io.IOException: invalid constant type: 18

    工程启动的时候有报下面这个错误的,更新下工程的jar包依赖,然后在工程的pom文件里加上下面的jar包 Caused by: java.lang.RuntimeException: java.io.I ...

  6. hive Caused by: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient

    Exception in thread "main" java.lang.RuntimeException: org.apache.hadoop.hive.ql.metadata. ...

  7. spring .cloud ------------java.lang.RuntimeException: com.netflix.client.ClientException,Caused by: java.lang.IllegalArgumentException: MIME type may not contain reserved characters

    1.问题的发生 Feign在默认情况下使用的是JDK原生的URLConnection发送HTTP请求,没有连接池,但是对每个地址会保持一个长连接,即利用HTTP的persistence connect ...

  8. ambari-server启动出现Caused by: java.lang.RuntimeException:java.lang.ClassNotFoundEception:com.mysql.jdbc.Driver问题解决办法(图文详解)

    不多说,直接上干货! 问题详解 启动ambari-server出现 Caused by: java.lang.RuntimeException:java.lang.ClassNotFoundEcept ...

  9. RxVolley报错:Caused by: java.lang.RuntimeException: RequestQueue-> DiskBasedCache cache dir error

    Caused by: java.lang.RuntimeException: RequestQueue-> DiskBasedCache cache dir error 这是因为SD卡动态权限导 ...

随机推荐

  1. linux执行python命令后permission denied

    linux下执行python后显示被拒绝问题定位: 1.检查下要执行的文件的权限是否存在执行权限,否则执行chmod命令赋予权限: 2.若赋予权限后仍然显示没有权限,检查下执行的python文件是否有 ...

  2. Kafka获取订阅某topic的所有consumer group【客户端版】

    之前写过如何用服务器端的API代码来获取订阅某topic的所有consumer group,参见这里.使用服务器端的API需要用到kafka.admin.AdminClient类,但是这个类在0.11 ...

  3. Elasticsearch学习之图解Elasticsearch中的_source、_all、store和index属性

    转自 : https://blog.csdn.net/napoay/article/details/62233031 1. 概述 Elasticsearch中有几个关键属性容易混淆,很多人搞不清楚_s ...

  4. 查看集成环境 phpstudy 中 mysql 版本号

    1. 打开面板 2.其他选项菜单 3. Mysql工具 4. mysql命令行 5.输入密码,回车.phpstudy  mysql默认 root 6.运行 select    version();

  5. pythonic operations

    变量交换 >>> a, b = b, a 循环遍历区间元素 >>>for i in range(10): ... print (i) 返回的是生成器对象,生成器比列 ...

  6. 东大oj1155 等凹函数

    Problem Description 定义一种数字称为等凹数字,即从高位到低位,每一位的数字先递减再递增,且该数是一个回文数,即从左读到右与从右读到左是一样的,仅形成一个等凹峰,如543212345 ...

  7. jquery easyui教程[申明:来源于网络]

    jquery easyui教程[申明:来源于网络] 地址:http://wenku.baidu.com/view/570e4d4533687e21af45a941.html

  8. vivado/FPGA 使用小纪

    1.使用FPGA做为外部控制器的总线译码时,将总线时钟接在全局时钟脚上(MRCC),就算接在了局部时钟(SRCC)上,也要通过BUFG转为全局时钟走线,否则会因为local clk到各部分的时延较大引 ...

  9. linux_rename命令用法

    rename在man中的解释为: NAME rename - rename files SYNOPSIS rename [options] expression replacement file... ...

  10. C和C指针小记(十五)-结构和联合

    1.结构 1.1 结构声明 在声明结构时,必须列出它包含的所有成员.这个列表包括每个成员的类型和名称. struct tag {member-list} variable-list; 例如 //A s ...