1

我在 Java 小程序中使用logback(via slf4j),配置存储在logback.xml小程序根目录的文件中。在 Eclipse 中运行它可以找到并加载放置在类路径中某处的配置。但它不会从 applet jar 加载配置。我怀疑这个问题与小程序本身无关,logback而是与小程序本身有关。我根本没有小程序的经验。

[编辑]

logback.xml(日志记录配置文件)在 jar 的根目录中,其余的 jar 内容似乎不相关。这是 jar 文件中日志记录配置文件的典型位置,因此问题与文件位置无关。我检查了jar文件。实际上我有 2 个 jar 文件:服务器端和小程序(客户端)。日志配置在服务器端工作正常,所以我怀疑它与小程序细节有关。

[编辑2]

我没有显式加载日志配置,它是由logback库完成的,它在类路径中查找特定的文件名。

[编辑3]

小程序设置:

<applet name="name" id="game" width="100%" height="100%" alt="Please visit our site"
    archive="my.jar" code="path/to/main.class" mayscript="" title="Java">
    <param name="boxborder" value="false">
    <param name="separate_jvm" value="true">
    <param name="image" value="http://www.oursite.com/img/splash.gif">
    <param name="centerimage" value="true">
    <param name="boxbgcolor" value="black">
    <param name="java_arguments" value="-Xmx384m -Dsun.java2d.noddraw=true -XX:CompileThreshold=1500 -Xincgc -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -Dcom.sun.management.jmxremote -Xss6m">
    <div class="nojava">
        <h1>
            Please Update Java</h1>
        <p>
            It appears that you do not have Java installed, or your version of Java is out of
            date. To play this game for free please <a target="_blank" href="http://www.java.com/en/download/index.jsp">
                click here</a> to download the latest version of Java. </p>
    </div>
</applet>

[编辑4]

打印 logback 的内部诊断信息,它说找不到logback.xml

4

3 回答 3

0

在我看来,您没有将日志配置文件打包在 jar 中?确保它在罐子里。此外,您最好System.out.println(...)在弄清楚之前使用它,否则您将看不到任何输出。

于 2012-07-05T11:29:50.493 回答
0

你怎么知道 Logback 没有加载配置?也许您只是看不到任何东西,因为没有附加程序或其他输出工具。

文档中我假设您必须使用 Java Logging API。因此,我不会使用 logback,而是切换到slf4j-jdk14.jar

如果你看到 logback 加载了配置:你用过

<configuration debug="true" > 

查看更多信息?

于 2012-07-06T10:40:00.863 回答
0

解决

该问题与 logback 或 applet 无关。我在签名后将配置文件放入 jar 中。谢谢大家的帮助。

于 2012-07-09T16:33:25.750 回答