java - WebSphere Liberty 在 WAR 的类目录中找不到 log4j.properties

标签 java properties log4j websphere-liberty

如果我将 WEB-INF/classes 之外的文件移动到通过以下方式手动加载的目录中:

<library id="global">
    <folder dir="C:\Temp" />
</library>

那么一切都很好。从我读到的所有内容来看,将属性文件存储在 WAR WEB-INF/classes 目录中应该足够好了,但它不起作用。

以下是 WLP 的详细信息:

product = WebSphere Application Server 20.0.0.4 (wlp-1.0.39.cl200420200401-1714)
wlp.install.dir = C:/IBM/WASv9_Liberty/
java.home = C:\Temp\OpenJDK\jdk-10+44_windows-x64_bin_ri.tar\jdk-10+44_windows-x64_bin_ri\jdk-10
java.version = 10
java.runtime = OpenJDK Runtime Environment (10+44)
os = Windows 10 (10.0; amd64) (en_US)
process = 1948@DEV-WIN10-221

有什么想法吗?谢谢。

[编辑]通过不工作,我看到了一些事情:

[err] log4j:WARN No appenders could be found for logger (org.springframework.web.context.ContextLoader).
[err] log4j:WARN Please initialize the log4j system properly.
[err] log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.

我的附加程序都没有加载,并且日志记录级别也没有加载。

当我将属性文件从类目录复制到 C:\Temp 目录时,log4j:WARN 消息从日志中消失,并且附加程序/日志记录级别再次开始工作。

最佳答案

您有可能使用 MAVEN 来构建 WAR 文件吗?

对于 MAVEN 构建,log4j 属性文件必须放置在 src/main/resources 文件夹下,除非通过 java 系统属性 -Dlog4j.configurationFile=file:/path/to/log4j2 显式配置。 xml

关于java - WebSphere Liberty 在 WAR 的类目录中找不到 log4j.properties,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61779491/

相关文章:

java - JSF:如何根据特定 FacesContext session 属性的值将用户重定向到另一个页面

java - Spring:如何通过 Autowiring 设置多个属性?

java - 如何配置 Tomcat JULI 日志记录来滚动日志文件?

log4j - 我怎么知道 Log4j 从哪里选择它的配置

java - 判断给定的数是否是完全平方数?

java - FirebaseRecyclerAdapter 28.0

java - 递归地Uzip文件夹-android

c# - 是否可以在 C# 的构造函数中调用属性,这样我就不必两次编写值的验证检查?

logging - Spring Boot 关闭包的日志记录

java - 如何使用 AOP Spring 和 log4j 实现日志记录