如何指定在Java webstart应用程序中使用的回写配置?
我想向许多内部Java webstart应用程序添加日志记录,最好使用logback日志框架和logback.groovy
配置文件。我希望在webstart应用程序.jnlp
文件中指定这一点,但不清楚如何做到这一点
我曾尝试在我的主jar(即包含我的main方法的jar)的资源中添加logback.groovy
文件,但这没有通过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希望配置文件在类路径上被引用为它所在的文件夹,而不是文件本身——请参见FAQs
然而,我真的不确定这将如何应用于Java Webstart
这可能吗?如果是,我该怎么做
# 1 楼答案
所以。。。我最终使用的方法是(与Askel的评论一致)将日志放回原处。groovy配置文件转换成
/src/main/resources
但是,我们以多种不同的方式使用Java库,默认情况下,我不想在jar中包含logback配置文件。在某种程度上,这是因为我们有几个库,而logback不能很好地处理多个配置文件。根据发布版本的不同,我希望使用不同的logback配置
对于我们的webstart版本,我们使用中删除配置文件
webstart-maven-plugin
来构建库、组装依赖项等。但是在进行此构建之前,我们将logback.groovy
配置文件复制到/src/main/resources
——这包括该库的构建中的文件。然后,在构建/发布之后,您可以从^{然而,这个插件也将运行,这将覆盖该库
mvn install
,这将把带有logback配置文件的库放在本地maven存储库中。因此,在删除build/release/temp配置之后,我们再做一次^{