将 java 应用程序作为 jar 运行时的 log4j 警告(请正确初始化 log4j 系统。)

MPK*_*MPK 4 java logging log4j jar

我现在正在创建一个独立的 java 应用程序,它需要作为一个可执行的 jar 运行。我已经配置了 log4j 以进行正确的日志记录。它在从 eclipse 运行应用程序时写入所有日志文件。但是当我运行可执行 jar 时,它会出现警告为 ** log4j:WARN No appender could be found for logger log4j:WARN 请正确初始化 log4j 系统。log4j:WARN 有关更多信息,请参阅http://logging.apache.org/log4j/1.2/faq.html#noconfig。** 有人可以建议如何解决这个问题吗?

Cow*_*rnz 6

您可能没有有效或正确的配置。将此添加到您的主要方法中。

BasicConfigurator.configure();
Run Code Online (Sandbox Code Playgroud)

否则,如果您在 pom 中使用 maven,则可能无法正确设置属性文件。

另一种情况是您使用了两个不同的日志框架。使用其中之一。

另一种尝试是做这样的事情来设置属性或 log4j rootlogger :

 Properties prop = new Properties(); 
 prop.setProperty("log4j.rootLogger", "WARN");
 PropertyConfigurator.configure(prop);
Run Code Online (Sandbox Code Playgroud)

您也可以尝试在启动 Java 时向命令行添加系统属性:

-Dlog4j.configuration=file:///path/to/your/log4j.properties
Run Code Online (Sandbox Code Playgroud)

最后的努力是:

将您的 log4j.properties 文件移动到 src 文件夹中。打开 Windows 资源管理器,浏览到您的项目所在的目录。浏览到 bin 目录并删除其中的所有文件夹。

现在在eclipse中点击project-->clean-->OK

这将强制它再次构建项目,将从 bin 目录中删除的所有内容都将重新创建。然后在新构建它时再次使用可执行jar。