java -Dlog4j.configuration 命令无效

java -Dlog4j.configuration command not working

我在 R 中遇到 Hadoop mapreduce 问题,在日志中我确实发现了这个问题:

log4j:WARN No appenders could be found for logger (org.apache.hadoop.ipc.Server).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info

我的问题出现了 here 不幸的是没有反应,所以经过大量研究我发现我需要告诉我在哪里可以找到 log4j 使用这个命令:

-Dlog4j.configuration=file:path/log4j.properties

我的问题是 WHERE ,因为我这样做了: java -Dlog4j.configuration=文件:log4j.properties 但在我的 ubuntu 终端中,它显示我没有正确使用 java 命令,没有任何迹象表明该命令是否有效,输出是这样的:

usage: java [-option]class [args ...]
....

所以我不知道在哪里输入这个命令,我们将不胜感激。 谢谢

据我所知,log4j 的路径不需要 URL。

试试这个:

-Dlog4j.configuration=/home/user/log4j.properties

(或您存储文件的任何位置)

尝试在开始应用程序之前进行设置:

export JAVA_OPTS=-Dlog4j...

您要做的基本上是配置 java 参数。 Whosebug 上有如何对其他参数执行此操作的示例,您可以在此处找到更多示例:xlConnect R use of JVM memory

我遇到了同样的问题,通过阅读 Log4j documentation.

解决了

Log4j will inspect the "log4j.configurationFile" system property and, if set, will attempt to load the configuration using the ConfigurationFactory that matches the file extension.

所以选项名称是"log4j.configurationFile",而不是"log4j.configuration"。

我的应用程序不是 Hadoop,而只是一个 Java Servlet。但我希望这 post 对您和其他人有所帮助。

为子孙后代分享。

Windows 用户的主题演讲:

  1. 如果类路径中存在 Logback 配置文件位置
-Dlog4j.configuration=file:"C:\Code\repos\logback.xml"
  1. 如果类路径中不存在 Logback 配置文件位置
-Dlog4j.configurationFile=file:"C:\Code\repos\logback.xml"