You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.17 09:53:11