我想将日志添加到许多内部Java应用程序中,最好使用logback日志框架和logback.groovy配置文件。我希望在webstart应用程序.jnlp文件中指定这一点,但不清楚如何做到这一点。
我尝试将logback.groovy文件添加到主jar的资源中(即包含main方法的jar),但是logback没有得到它。
我还尝试过多次尝试将logback.groovy文件添加到.jnlp文件的<resources>部分:
<jnlp ...>
<resources>
<j2se version="$j2seVersion" />
$dependencies // from maven-webstart-plugin
// some reference to my logback configuration - e.g.
<dir href="log/" />
</resources>
</jnlp>值得注意的是,logback希望在类路径上将配置文件作为其驻留的文件夹引用,而不是引用到文件本身--请参阅常见问题。
但是,我真的不确定这将如何适用于。
这个是可能的吗?如果是的话,我该怎么做?
发布于 2015-09-28 09:21:08
所以..。我最后使用的方法是(与Askel的注释一致)将logback.groovy配置文件放入/src/main/resources。
但是,我们以多种不同的方式使用Java库,默认情况下,我不希望将logback配置文件包括在jar中。在某种程度上,这是因为我们有几个库,而且logback不能很好地处理多个配置文件。另外,根据发行版的不同,我想使用不同的logback配置。
对于webstart版本,我们使用webstart-maven-plugin构建库、组装依赖项等等。但是在进行此构建之前,我们将logback.groovy配置文件复制到/src/main/resources --这包括该库的构建中的文件。然后,在构建/发布之后,您可以从/src/main/resources中删除配置文件。
但是,这个插件还将运行mvn install,它将把带有logback配置文件的库放在本地maven存储库中。因此,在删除构建/发布/临时配置之后,我们执行另一个mvn clean install,它将覆盖该库。
https://stackoverflow.com/questions/25001350
复制相似问题