Java 从maven禁用jetty运行的日志记录
我下载了一个需要从源代码构建的大框架。该项目使用maven构建结构,包括一个演示应用程序,可以通过嵌入式jetty查看该应用程序。Maven插件处理所有这些事情 但是,当我运行演示应用程序(使用mvnjetty:run)时,我无法真正使用它,因为出于某种原因,调试级别的日志记录被打开,并且应用程序花费了大部分时间记录大量语句。响应能力几乎为零 该框架(geomajas 1.5.0)似乎使用了SLF4J,但我不知道它在哪里配置或在哪里可以关闭 任何想法欢迎。。。谢谢 更新: 显然,他们使用logback。我找到了配置文件(logback.xml),在其中我编辑了调试级别,并用ERROR替换了它们 为了确保更改能够传播,我清理了项目并重建了它。但问题依然存在! 我手动查看了Java 从maven禁用jetty运行的日志记录,java,maven-2,jetty,slf4j,Java,Maven 2,Jetty,Slf4j,我下载了一个需要从源代码构建的大框架。该项目使用maven构建结构,包括一个演示应用程序,可以通过嵌入式jetty查看该应用程序。Maven插件处理所有这些事情 但是,当我运行演示应用程序(使用mvnjetty:run)时,我无法真正使用它,因为出于某种原因,调试级别的日志记录被打开,并且应用程序花费了大部分时间记录大量语句。响应能力几乎为零 该框架(geomajas 1.5.0)似乎使用了SLF4J,但我不知道它在哪里配置或在哪里可以关闭 任何想法欢迎。。。谢谢 更新: 显然,他们使用logb
target
文件夹中的logback.xml文件,它们已经更新。但我还是看到了日志记录
更新2
顺便说一句,我使用的是Windows 7。尝试找出一个log4j配置(如果它用于日志记录)——可能是log4j.xml(或log4j.properties)文件。如果从类路径中删除此文件,则根本不会进行日志记录。如果您想降低日志级别,请尝试注释掉该文件中的一些日志部分,例如
<!--<logger name="org.hibernate">
<level value="debug"/>
<appender-ref ref="hibernate-file"/>
</logger>-->
对于本例,org.hibernate包中的类将没有日志。查看此slf4j手册/概述,您似乎可以使用slf4j NOP jar(slf4j-NOP-1.5.10.jar)关闭所有日志记录。因此,您可能需要在Project WEB-INF/lib文件夹中找到当前的slf4j实现jar,并将其替换为NOP jar 虽然它很可能使用log4j实现,但如果是这种情况,您需要找到log4j.xml或log4j.properties并编辑/删除它们。但是,它们可能很难找到——首先在WEB-INF/classes中查找,然后在某种配置目录中查找将是一个很好的开始 编辑{ 有点难看,但如果您只是想让它尽快启动并运行,您可以将stdout和stderr重定向到/dev/null,这样会使它更快一些,因为它不会写入磁盘或控制台: mvn jetty:run>dev/null 2>&1 }
HTH禁用日志记录的最简单、最直接的方法实际上是使用NOP。为此,编辑
geomajas/geomajas-dojo-example/pom.xml
,并将日志依赖项更改为:
<!-- logging dependencies, delegate all to slf4j and use logback -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.5.8</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-nop</artifactId>
<version>1.5.8</version>
</dependency>
org.slf4j
slf4j api
1.5.8
org.slf4j
slf4j nop
1.5.8
并运行
mvnjetty:run
Geomajas对示例应用程序使用logback。您可以使用src/main/resources中的logback.xml文件配置日志记录
可以使用以下配置文件关闭所有功能:
<configuration>
<root>
<level value="OFF"/>
</root>
</configuration>
亲切问候,,
Joachim我在Windows 7上,它是否有/dev/null等效项?啊,好的,然后是这样的:“mvn jetty:run>NUL”,我在这里找到: