Saxon 12.4 EE中如何抑制函数查找相关提示消息?
Saxon 12.4 EE中如何抑制函数查找相关提示消息?
我来帮你搞定这个问题~ 那些关于函数定义查找的提示消息,本质是Saxon输出的信息级日志,对终端用户确实没啥用,我们可以通过调整日志配置或者自定义日志处理器来把它们关掉,具体方法如下:
借助日志框架调整级别
如果你的Java Swing应用已经用了Log4j、SLF4J这类日志框架,直接在日志配置里把Saxon相关的日志级别调高就行。比如把net.sf.saxon的日志级别设为WARN或ERROR,这样就只会输出警告和错误信息,那些函数查找的提示就不会显示了。
举个Log4j2的配置例子:<Logger name="net.sf.saxon" level="WARN" additivity="false"> <AppenderRef ref="YourAppender"/> </Logger>自定义Saxon日志处理器
要是你的应用没用到第三方日志框架,也可以直接给Saxon的Processor绑定一个自定义日志实现。Saxon提供了Logger接口,我们可以实现一个只处理警告及以上级别消息的处理器,忽略掉INFO、DEBUG级别的函数查找提示:// 初始化Saxon Processor(EE版本) Processor processor = new Processor(true); // 自定义日志处理器 Logger customLogger = new Logger() { @Override public void info(String message) { // 直接忽略INFO级别的函数查找提示 } @Override public void warning(String message) { // 保留警告信息,按需输出 System.err.println("Saxon 警告: " + message); } @Override public void error(String message) { // 保留错误信息 System.err.println("Saxon 错误: " + message); } // 忽略其他低级别日志 @Override public void trace(String message) {} @Override public void debug(String message) {} // 其他接口方法按需实现,比如fatalError等 }; // 把自定义日志绑定到Processor上 processor.setLogger(customLogger);额外小提示
你也可以检查下Saxon的配置参数,不过这类细节日志一般都是通过日志级别控制的,上面两种方法基本能解决你的问题。
备注:内容来源于stack exchange,提问作者twfurst
相关产品推荐
相关产品推荐

