gpt4 book ai didi

java - 如何在 OSGi 环境中为 log4j2 JUL 适配器设置系统属性

转载 作者:搜寻专家 更新时间:2023-10-30 21:12:20 27 4
gpt4 key购买 nike

我想在 OSGi 中使用 log4j2 JUL 适配器环境。所以我直接使用 log4j2 OSGi 包并在我的自定义 OSGi 包之一中设置以下系统属性,如前所述 here :

System.setProperty("java.util.logging.manager", "org.apache.logging.log4j.jul.LogManager");

似乎此系统属性未设置,因为来自 Java util 框架的日志不会发送到附加程序。

我使用的 OSGi 框架是 Eclipse Equinox .

我在哪里可以设置此系统属性以使用 OSGi?

编辑:

据我所知,问题出在 JVM 开始时所需的属性,即 java.util.logging.manager 设置为其默认值,因此将其设置在OSGi 环境无效,即使我们无法使用 -D 选项设置此属性,因为 log4j2 OSGi 包未暴露给类路径,因此会发生类未找到异常。

在这件事上非常感谢任何帮助。

最佳答案

通常,如果通过 System.setProperty API 设置属性不起作用(可能是因为该属性之前您甚至可以覆盖它),你应该尝试从 JVM 开始设置它,在命令行输入“-D”参数:

-Djava.util.logging.manager=org.apache.logging.log4j.jul.LogManager

关于java - 如何在 OSGi 环境中为 log4j2 JUL 适配器设置系统属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30815326/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com