JRuby - 禁用Apache Common Logging

时间:2015-08-20 12:20:39

标签: apache logging jruby

我试图以这种方式禁用JRuby中的Apache Common Logging:

TaskCompletionSource

基于Java代码:

require 'java'
...

module ...

  java_import org.apache.commons.logging.Log
  java_import org.apache.commons.logging.LogFactory

  java::lang.static {
    java::lang.System.setProperty("org.apache.commons.logging.Log", 
                                  "org.apache.commons.logging.impl.NoOpLog")
  }

在Java上面,代码禁用了日志记录,但在JRuby中仍然启用了日志记录。

1 个答案:

答案 0 :(得分:0)

$route['functionName'] = "controller/functionName"; $route['functionName'] = "controller/functionName"; 什么都不做(因为JRuby需要懒惰地允许包名称,因为它无法知道在从给定包加载类之前哪些包存在)。

在Ruby中,因此JRuby没有静态初始化器 - 代码在解析时执行,因此只需执行一次(不需要java_imports,因为你没有使用这些类):

java::lang.static