【问题标题】:How to specify absolute path within logback.xml?如何在 logback.xml 中指定绝对路径?
【发布时间】:2017-09-07 07:11:41
【问题描述】:
<?xml version="1.0" encoding="UTF-8"?>
<configuration debug="true">
    <include resource="/opt/logback/logback_mobile.xml"></include>
</configuration>

找不到与 [/opt/logback/logback_mobile.xml] 对应的资源

但文件确实存在。

如何在logback.xml 中指定绝对路径?

【问题讨论】:

    标签: java logback


    【解决方案1】:

    在 logback.xml 文件中包含资源时,您有三种选择:

    作为文件

    要包含文件,请使用文件属性。您可以使用相对路径,但请注意当前目录由应用程序定义,不一定与配置文件的路径相关。

    作为资源:

    要包含资源,即在类路径中找到的文件,请使用资源属性。 &lt;include resource="includedConfig.xml"/&gt;

    作为网址:

    要包含 URL 的内容,请使用 url 属性。 &lt;include url="http://some.host.com/includedConfig.xml"/&gt;

    来自docs

    因此,您可以使用相对于应用程序运行位置的文件路径,也可以使用类路径引用,也可以使用 URL,但不支持绝对文件路径。

    要包含此文件:/opt/logback/logback_mobile.xml 我认为您的选择是:

    • 使用相对引用,假设您的应用程序从/opt/app/myservice 运行,那么您的包含声明将是:&lt;include resource="../../logback/logback_mobile.xml"&gt;&lt;/include&gt;
    • 在应用程序的类路径中包含 /opt/logback/,然后将包含声明更改为 &lt;include resource="logback_mobile.xml"&gt;&lt;/include&gt;
    • 从 Web 服务器提供 logback_mobile.xml,然后通过 URL 包含它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-05-05
      • 1970-01-01
      • 1970-01-01
      • 2021-12-12
      • 2014-07-03
      • 2014-02-28
      • 2012-07-17
      相关资源
      最近更新 更多