首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >java小程序日志记录7u13

java小程序日志记录7u13
EN

Stack Overflow用户
提问于 2013-02-05 18:30:10
回答 2查看 3.1K关注 0票数 3

我刚刚安装了新的JDK7u13,但是日志记录小程序不工作。我在控制台看不到任何日志消息。该小程序在7u11下工作正常。我试过用一个简单的程序(而不是applet),它可以工作。当然,我已经重新编译了小程序,修改了logging.properties。在新的JRE更新中是否有必须配置的新参数?

举个例子:

Hello.class:

代码语言:javascript
运行
复制
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
}

控制台:

代码语言:javascript
运行
复制
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产生:

代码语言:javascript
运行
复制
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....

谢谢。

EN

回答 2

Stack Overflow用户

发布于 2013-02-05 23:33:25

代码语言:javascript
运行
复制
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没有读取属性文件的处理程序值,因此要解决您的问题,您只需以编程方式添加处理程序,如我在上面的代码中所示。我将尝试进行更多的调试。

票数 2
EN

Stack Overflow用户

发布于 2013-02-05 20:12:26

我将您的小应用程序代码与jdk1.7.0_09结合使用,其中包含以下logging.properties:

代码语言:javascript
运行
复制
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你好初始化信息:你好!!嗯……

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14705326

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档