您的位置:首页 > 其它

xfire与cxf冲突包解决方案【发布时异常注意】

2017-04-26 23:23 141 查看


xfire与 cxf冲突现象解决方案【项目发布中遇到的异常情况】

项目发布环境使用的是tomcat7

冲突说明项目发布在调用cxf动态客户端的时候出现没有找到编译器情况(Unable
to create schema compiler)



就是系统运行时无法找到,tools.jar工具类中的编译器的方法导致无法编译动态生成客户端的情况。

一开始tomcat选择的是jdk下的/jre使用eclipse跑tomcat是可以正常运行的,一但将tomcat单独启动时用的jre换成默认运行的jre,那就开始报上面的错误了。以下是eclipse两种情况测试选项



当时就想把 jdk下的/lib/tools.jar直接取过来放到WEB-INF/lib中去经测试也是无法调用。反复的折腾了好几次。

最后确定了将tools.jar包放到了,jre下的/lib/tools.jar中去,将之前添加到WEB-INFO/lib中的tools.jar删掉。验证通过。

总结如下如果遇到以上情况,将tools.jar放到tomcat运行的“jre/lib”下即可。
通常我们在安装jdk的是候都会,另安装一个jre,这个jre在window系统中是默认使用的jre,当我们tomcat没有指明jre的情况下默认直接使用的就是这后安装的这个jre,跟环境变量中配置的JAVA_HOME没有半毛钱关系。除非你指明tomcat使用的jre是jdk中的jre,那同样将tools.jar放到jdk/jre/lib中即可。

注意:tools.jar不能重复放在tomcat下的任意lib中[含WEB-INFO/lib]
,否则无法正常调用。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  xfire cxf
相关文章推荐