我刚刚安装了新的JDK7u13,但是日志记录小程序不工作。我在控制台看不到任何日志消息。该小程序在7u11下工作正常。我试过用一个简单的程序(而不是applet),它可以工作。当然,我已经重新编译了小程序,修改了logging.properties。在新的JRE更新中是否有必须配置的新参数?
举个例子:
Hello.class:
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....
信息消息"Hello!!“在哪里?
例如,在JRE1.6中,相同的applet产生:
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....
谢谢。
发布于 2013-02-05 23:33:25
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-05 20:12:26
我将您的小应用程序代码与jdk1.7.0_09结合使用,其中包含以下logging.properties:
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你好初始化信息:你好!!嗯……
https://stackoverflow.com/questions/14705326
复制相似问题