我正在使用一个包(ravro),后者又使用rJava调用Avro Java库来完成它的工作。该库使用log4j进行日志记录,当我使用ravro中的一个函数时,我得到了缺少的log4j配置消息:
log4j:WARN No appenders could be found for logger (org.apache.hadoop.metrics2.lib.MutableMetricsFactory).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
我知道要删除这些消息,我只需要创建一个最小的log4j.properties文件并将其放在类路径上。问题是如何在R中执行此操作?我确实尝试使用.jaddclassPath
,其目录包含log4j.properties
文件,但似乎无效。
答案 0 :(得分:1)
如果您在分析上下文中使用ravro,我很幸运将log4j.properties
放在工作目录中,并将其添加到带有rJava::.jinit(getwd())
的classPath中。您可以检查并确保该目录已添加rJava::.jclassPath()
。
在包开发上下文中,我复制了rJavaPackageExample并附加了
rJava::.jaddClassPath(file.path(getwd(), "inst/java"))
结束时.onLoad
。