前言:
在一個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版本)
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。
……
運行項目,成功!