在命令行中,我可以运行如下的java文件:
java -Dlogback.configurationFile=logback.xml -jar floodlight.jar
但是在像FUSE ESB这样的OSGi容器中,我无法添加这样的
-Dlogback.configurationFile=logback.xml
使用osgi容器时如何做同样的事情?
答案 0 :(得分:1)
您应该能够将所有系统属性添加到etc/system.properties
文件中。
因此,在您的情况下,您可能会尝试追加:
logback.configurationFile=logback.xml
或者如果这不起作用并且您已将文件放在etc目录中:
logback.configurationFile=${karaf.home}/etc/logback.xml
请注意,这不是*.cfg
文件,因此未被配置管理员覆盖,可能需要重新启动。
答案 1 :(得分:0)
Fuse ESB具有支持logback API的Pax Logging服务。您可以在Pax Logging配置文件中指定您的logback配置文件位置。只需将org.ops4j.pax.logging.logback.config.file=<PATH_TO_LOGBACK_FILE>/logback.xml
添加到etc/org.ops4j.pax.logging.cfg
文件即可。