Hadoop java-Dlog4j.configuration命令不工作

Hadoop java-Dlog4j.configuration命令不工作,hadoop,mapreduce,log4j,Hadoop,Mapreduce,Log4j,我对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 m

我对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
不幸的是,我的问题没有得到任何反应,因此经过大量研究,我发现我需要使用以下命令告诉在哪里可以找到log4j:

-Dlog4j.configuration=file:path/log4j.properties
我的问题是在哪里,因为我这样做了: java-Dlog4j.configuration=file:log4j.properties 但在我的ubuntu终端中,它显示我没有正确使用java命令,没有任何东西显示该命令是否有效,输出如下:

usage: java [-option]class [args ...]
....
所以我不知道在哪里输入这个命令,任何帮助都将不胜感激。
谢谢

据我所知,log4j不需要指向其路径的URL

请尝试以下方法:

-Dlog4j.configuration=/home/user/log4j.properties
(或您存储文件的位置)

在启动应用程序之前,请尝试设置:

export JAVA_OPTS=-Dlog4j...

您试图做的基本上是配置java参数。这里有一些关于stackoverflow的示例如何对其他参数执行此操作,您将在这里找到更多示例:

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

Log4j将检查“Log4j.configurationFile”系统属性,如果 设置时,将尝试使用ConfigurationFactory加载配置 与文件扩展名匹配的

因此,选项名称是“log4j.configurationFile”,而不是“log4j.configuration”


我的应用程序不是Hadoop,只是一个Java Servlet。但我希望这篇文章能帮助你和其他人。

我做到了:导出Java_OPTS=-Dlog4j.configuration=/usr/local/Hadoop/etc/Hadoop/log4j.properties,我得到:-su:export:…不是有效的标识符it's ok,我这样做了:export=“。。。“那么我需要在终端中再次添加-Dlog4j.configuration还是只导出java=“…”?
export java_OPTS=-Dlog4j.configuration=/usr/local/hadoop/etc/hadoop/log4j.properties
,无su,无sudo,无nothing。如果设置了echo$JAVA_OPTS,您可以使用
echo$JAVA_OPTS
进行检查,然后从相同的shell运行您的应用程序是的,它只需要添加“”:export JAVA_OPTS=“-Dlog4j.configuration=/usr/local/hadoop/etc/hadoop/log4j.properties”我需要从Rstudio运行应用程序,而不是从shell运行应用程序如果从shell运行Rstudio,然后从Rstudio运行应用程序,则应该移交环境变量。