使用java.util.logging在eclipse服务器端日志中开发GWT

使用java.util.logging在eclipse服务器端日志中开发GWT,java,eclipse,maven,gwt,jetty,Java,Eclipse,Maven,Gwt,Jetty,我一直在使用Eclipse4.4和GWT2.6.0开发我的web应用程序。我有一个外部jar,它包含纯java中的一些功能,还有一个GWT项目,它在服务器部件services/servlet中使用这个jar。GWT项目是一个纯eclipse项目,我后来将其转换为maven项目。jar是用maven构建的,并填充到src/main/webapp/WEB-INF/lib/目录中,在那里它像一个符咒一样工作 简短版本: jar或servlet中生成的java.util.logging消息在开发过程中被

我一直在使用Eclipse4.4和GWT2.6.0开发我的web应用程序。我有一个外部jar,它包含纯java中的一些功能,还有一个GWT项目,它在服务器部件services/servlet中使用这个jar。GWT项目是一个纯eclipse项目,我后来将其转换为maven项目。jar是用maven构建的,并填充到src/main/webapp/WEB-INF/lib/目录中,在那里它像一个符咒一样工作

简短版本: jar或servlet中生成的java.util.logging消息在开发过程中被忽略,而不是记录到eclipse控制台

长版本: jar和GWT servlet中的消息记录是使用java.util.logging实现的。问题是,在开发过程中,我只能看到一些来自GWT编译过程的消息和库解析消息,这些消息不是来自java.util.logging工具e。G在它们中有一个调试,它在java.util.logging中不存在,但在我的实际代码或jar中没有。当我在eclipse的运行配置中将以下内容添加到VM参数中时,我能够从代码中看到一些信息消息,但没有精细、精细和精细级别,也没有来自jar的信息:

-Dorg.eclipse.jetty.util.log.class=org.eclipse.jetty.util.log.StdErrLog -D{classref}.LEVEL=DEBUG
我还尝试将下面的logging.properties文件放在不同的位置,例如src/main/resources、src/main/webapp/WEB-INF/lib/、src/main/webapp/WEB-INF/classes/,但到目前为止,这些都不起作用

handlers= java.util.logging.FileHandler, java.util.logging.ConsoleHandler

.level= ALL

java.util.logging.ConsoleHandler.level = ALL
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
我还没有在外部部署这个应用程序,所以我不知道它在e。GTomcat环境。最令人沮丧的是,我已经在网上搜索了几个小时,但还没有找到任何接近我当前IDE配置中启用日志记录和控制日志级别的目标

来自GWT本身的客户端日志工作起来很有魅力

我将非常感谢在这个话题上的任何帮助!提前感谢:-

编辑:根据Joakim Erdfelt和Thomas Broyer的评论,我做了一个实验,排列了几个不同的Jetty日志参数,我通过eclipse运行配置中的-D参数将这些参数传递给VM

以下是结果。主要目标是解锁所有级别的日志记录

无Jetty日志参数->工作级别:严重、警告、信息。 完整的虚拟机参数:

-Xmx2048m-XstartOnFirstThread

java.util.logging.config.file文件位于/src/main/resources/logging.properties、src/main/resources/logging.properties、/src/main/resources/logging.properties、logging.properties->no-level working中

-Xmx2048m-XstartOnFirstThread-Djava.util.logging.config.file=src/main/resources/logging.properties

-D{classref}.LEVEL=ALL或-D{classref}.LEVEL=FINEST->工作级别:严重、警告、信息

-Xmx2048m-XstartOnFirstThread-D{classref}.LEVEL=ALL

这也改变不了什么。可见级别为:严重级别、警告级别、信息级别。 完整的虚拟机参数:

-Xmx2048m-XstartOnFirstThread-D{classref}.LEVEL=ALL-Dorg.eclipse.jetty.util.log.class=org.eclipse.jetty.util.log.StrErrLog


所以,伙计们,问题仍然悬而未决。显然,日志记录工作正常,但我无法正确设置级别。我肯定错过了一些明显的东西…

显然,不可能告诉GWT的嵌入式Jetty在我使用的配置中使用java.util.logging框架。我发现GWT团队不启用此功能的决定至少有点奇怪,因为客户端日志记录使用了java.util.logging框架的模拟。因此,在应用程序中不要混合使用两种不同的日志记录方式,也可以对servlet使用java.util.logging。真遗憾。感谢Joakim指出这一点。

您尝试过-Djava.util.logging.config.file=logging.properties吗?您说的是GWT 2.6.0,但Jetty的版本是什么?一些较新的版本有登录到java.util.logging的选项,根据版本的不同,可能会有不同的技术。我目前正在测试-D的不同选项,基于此:至于Jetty的版本:我如何才能看到它?Eclipse告诉我运行GWT-2.6.x版本的GPE启动器。以及谷歌网络工具包2.6.0。Jetty似乎是从Google插件内部启动的。