java.lang.IllegalStateException:Unable to create schema compiler

前言:

      在一个JavaWeb项目中,要接入WebService时,使用CXF,在启动时报出如下异常:

java.lang.IllegalStateException:Unable to create schema compiler 

解决过程:

      1、根据异常报错信息,定位到抛出异常的方法:org.apache.cxf.common.jaxb.JAXBUtils.createSchemaCompilerWithDefaultAllocator(cxf-api-2.6.0.jar包中,本人使用的是2.6.0版本)


java.lang.IllegalStateException:Unable to create schema compiler_第1张图片


java.lang.IllegalStateException:Unable to create schema compiler_第2张图片


      2、可以发现,错误出在加载 com.sun.tools.internal.xjc.api.XJC这个类的时候

      3、查询发现,com.sun.tools.internal.xjc.api.XJC这个类是在tools.jar这个jar包中

      4、jdk是自带tools.jar的,如果你的启动环境是jdk,是不会报这个错误的,因为本人的Eclipse是jre启动,缺少tools.jar所以报错。需要将这个jar包加入。选中

JRE System Library,点击Edit,一步步将tools.jar添加进来,最后finish。

java.lang.IllegalStateException:Unable to create schema compiler_第3张图片

     


java.lang.IllegalStateException:Unable to create schema compiler_第4张图片


……


运行项目,成功!









你可能感兴趣的:(异常解除学习)