gpt4 book ai didi

java - 无法让 java.util.logging 与通过 JNLP 启动的应用程序一起使用

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:34:21 24 4
gpt4 key购买 nike

出于调试目的,我希望我的应用程序记录到 java.util.logging.SocketHandler。这是我的配置文件:

handlers = java.util.logging.SocketHandler
.level = WARNING
java.util.logging.SocketHandler.level = ALL
java.util.logging.SocketHandler.formatter = java.util.logging.SimpleFormatter
java.util.logging.SocketHandler.host = localhost
java.util.logging.SocketHandler.port = 10101
com.mycompany.level = ALL

此日志记录配置文件与应用程序的 jar 捆绑在一起并从 main.jar 中读取。当我独立启动应用程序时,日志记录按预期工作。我看到日志语句流式传输到 localhost:10101。但是,当我通过 JNLP 启动应用程序时,看不到日志记录。这是我的 JNLP 配置文件:

<jnlp spec="1.0+" codebase="http://mycompany.com" href="myapp.jnlp">
<information>
<title>My App</title>
<vendor>My Company</vendor>
<offline-allowed/>
</information>
<security>
<all-permissions/>
</security>
<resources>
<j2se version="1.6+"/>
<jar href="myapp.jar"/>
</resources>
<application-desc main-class="com.mycompany.Main"/>
</jnlp>

我没有找到任何信息,也没有看到为什么这不起作用的任何原因。有人可以帮助完成这项工作吗?或者建议另一种(也许更好?)方法来从通过 JNLP 启动的应用程序中捕获日志记录。

最佳答案

嗯,我想通了。原来我的问题是我如何将日志记录属性文件作为资源加载。我正在使用:

ClassLoader.getSystemResourceAsStream("/com/mycompany/logging.properties");

但我应该使用:

Main.class.getResourceAsStream("/com/mycompany/logging.properties");

关于java - 无法让 java.util.logging 与通过 JNLP 启动的应用程序一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9842739/

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