3

新しい JDK7u13 をインストールしたばかりですが、ロギング アプレットが機能しません。コンソールにログ メッセージが表示されません。アプレットは 7u11 で正常に動作しました。簡単なプログラム (アプレットではない) で試してみましたが、うまくいきました。もちろん、アプレットを再コンパイルし、logging.properties を修正しました。新しい JRE 更新で構成する必要がある新しいパラメーターはありますか?

例:

こんにちは皆さん:

import java.applet.Applet;
import java.util.logging.*;

public class Hello extends Applet {

      private static final Logger log = Logger.getLogger("Hello");

   @Override
   public void init() {
      log.info("Hello!!");
      System.out.println("mmmhhhh....");
   }
   // TODO overwrite start(), stop() and destroy() methods
}

コンソール:

Java Plugin 10.13.2.20
Usando versión de JRE 1.7.0_13-b20 Java HotSpot(TM) Client VM
Directorio raíz del usuario = C:\Documents and Settings\commander
----------------------------------------------------
c:   borrar ventana de consola
f:   finalizar objetos en la cola de finalización
g:   recopilación de basura
h:   mostrar este mensaje de ayuda
l:   volcar lista de classloader
m:   imprimir uso de memoria
o:   disparar registro
q:   ocultar consola
r:   recargar configuración de política
s:   volcar propiedades del sistema y de despliegue
t:   volcar lista de threads
v:   volcar pila de threads
x:   borrar caché de classloader
0-5: definir nivel de rastreo en <n>
----------------------------------------------------
mmmhhhh....

「こんにちは!!」という情報メッセージはどこにありますか?

JRE1.6 (たとえば) では、同じアプレットが以下を生成します。

Java Plug-in 1.6.0_07
Usar versión JRE 1.6.0_07 Java HotSpot(TM) Client VM
Directorio local del usuario = C:\Documents and Settings\commander
----------------------------------------------------
c:   borrar ventana de consola
f:   finalizar objetos en la cola de finalización
g:   liberación de recursos
h:   presentar este mensaje de ayuda
l:   volcar lista del cargador de clases
m:   imprimir sintaxis de memoria
o:   activar registro
p:   recargar configuración de proxy
q:   ocultar consola
r:   recargar configuración de norma
s:   volcar propiedades del sistema y de despliegue
t:   volcar lista de subprocesos
v:   volcar pila de subprocesos
x:   borrar antememoria del cargador de clases
0-5: establecer nivel de rastreo en <n>
----------------------------------------------------
05-feb-2013 11:18:50 Hello init
INFO: Hello!!
mmmhhhh....

ありがとうございました。

4

2 に答える 2

2
import java.applet.Applet;
import java.util.logging.*;

public class Hello extends Applet {

      private static final Logger log = Logger.getLogger("Hello");

   @Override
   public void init() {
      log.addHandler(new ConsoleHandler()); // ADD THIS LINE TO YOUR CODE
      log.info("Hello!!");
      System.out.println("mmmhhhh....");
   }
   // TODO overwrite start(), stop() and destroy() methods
}

何らかの理由で、LogManager はプロパティ ファイルのハンドラの値を読み取っていないため、問題を解決するには、上記のコードに示すようにプログラムでハンドラを追加するだけです。もう少しデバッグしてみます。

于 2013-02-05T15:33:25.377 に答える
0

このlogging.propertiesでjdk1.7.0_09でアプレットコードを使用しました:

handlers=java.util.logging.ConsoleHandler
java.util.logging.ConsoleHandler.level=INFO
java.util.logging.ConsoleHandler.formatter=java.util.logging.SimpleFormatter

コンソールに次の出力が表示されました。

2013 年 2 月 5 日 12:08:35 PM こんにちは init INFO: こんにちは!! うーん....

于 2013-02-05T12:12:26.410 に答える