草庐IT

logback-groovy

全部标签

java - 通过 logback.xml 禁用来自特定类/jar 的日志

在我的应用程序中,我使用Java、Hibernate。日志记录:我使用logback.xml谁能建议是否有办法从Hibernatejar中禁用以下特定类的日志。要从特定类中删除的LOGGER:错误o.h.e.jdbc.spi.SqlExceptionHelperlogback.xml:%d{yyyy-MM-ddHH:mm:ss}[%thread]%-5level%logger{36}-%msg%n 最佳答案 将以下内容添加到您的logback.xml配置文件中:指令:level="OFF"告诉Logback禁用给定记录器的所有日志输

java - maven 编译 groovy

我遇到这样一种情况,我的一些groovy代码引用了我的java文件,但我也有不同的java文件引用了相同的groovy代码。当尝试在maven中编译时,我要么需要在java之前或之后编译groovy,但由于groovy代码依赖于一些java文件,而不同的java文件依赖于groovy代码,所以这不会真正起作用。有没有办法处理这种依赖性? 最佳答案 是的,只需使用GMaven.由于它是一个联合编译器,它会自动管理您的java到groovy和groovy到java的依赖关系。简而言之,您需要:在你的pom.xml中包含gmaven-pl

java - Groovy 泛型失败

除了groovy比java更动态...为什么这是groovy中的编译时错误(意外标记):interfaceA{TgetByClass(Classclazz)}如何以常规方式编写此代码? 最佳答案 Groovy解析器不处理methodsignaturesbeginningwithGenericinformation...如果你添加public修饰符,它会解析:interfaceA{publicTgetByClass(Classclazz)}虽然我不相信你会在编译时获得任何类型检查来添加这个注解

java - Groovy 中的匿名代码块

有没有办法在Groovy中使用匿名代码块?例如,我正在尝试将以下Java代码转换为Groovy:{inti=0;System.out.println(i);}inti=10;System.out.println(i);我能想到的最接近的翻译如下:booleangroovyIsLame=trueif(groovyIsLame){inti=0printlni}inti=10printlni我知道匿名代码块通常是一种反模式。但是使用名称如“inputStream0”和“inputStream1”的变量也是一种反模式,因此对于我正在处理的这段代码,匿名代码块会有所帮助。

java - 如何在多模块 Maven 项目中配置 slf4j+logback?

我的Maven项目有大约七个子模块。其中六个打包为JAR,一个打包为WAR。我应该在每个模块中创建单独的logback.xml配置吗?或者我应该有一个所有其他模块都依赖的“通用”模块,并在其中放置一个logback.xml吗?还有其他选择吗?谢谢。 最佳答案 所有库JAR都应该仅使用slf4j-api依赖项,并且只有最终应用程序(在您的情况下是.war)应该包含logback依赖项及其配置。出于测试目的,我认为更容易制作test对slf4j-simple的依赖,它使用起来更简单,并且通常足以用于测试用例。

java - 如何在不使用 -cp 开关的情况下在 Groovy 中自动加载数据库 jar?

我想简化调用Oracle数据库的Groovy脚本的执行。如何将ojdbcjar添加到默认类路径以便我可以运行:groovyRunScript.groovy代替:groovy-cpojdbc5.jarRunScript.groovy 最佳答案 摘自GroovyRecipes,作者ScottDavis,AutomaticallyIncludingJARsinthe./groovy/libDirectory:在您的登录目录中创建.groovy/lib取消注释${GROOVY_HOME}/conf/groovy-starter.conf中的

java - groovy 中的闭包与 java 8 中的闭包(lambda 表达式)?

给定doSomething(Functionfoo){printlnfoo(2)}Groovy:doSomething({it*it}作为函数)Java:doSomething((x)->x*x)这两者有什么区别吗? 最佳答案 在Groovy中,闭包是groovy.lang.Closure类型的一等公民,而Java8中的lambda是它们所代表的默认方法接口(interface)的实际实例。这意味着您需要在Groovy中使用as关键字(如您所示),但或者,在Java中您需要指定一个接口(interface),因此在Groovy中,您

java - Groovy 异常后重试

在Ruby中,我可以写:begindo_something#exceptionraisedrescue#handleserrorretry#restartfrombeginningendGroovy/Java中有类似的东西吗?我找到了this但也许有更好的东西? 最佳答案 您可以在Groovy中构建自己的辅助方法来封装此重试逻辑。defretry(inttimes=5,ClosureerrorHandler={e->log.warn(e.message,e)},Closurebody){intretries=0defexceptio

java - Java 风格的 Groovy 和 Java 一样快吗?

如果我理解正确的话,Groovy是动态类型的,但因为它几乎是Java的超集,所以可以选择提供静态类型信息。如果编写只有少数部分对性能至关重要的内容,同时避免使用多种语言的摩擦,这可能会很有用。只能为性能关键部分提供类型注释。在使用类Java子集并提供静态类型注释的函数/类中使用Groovy而不是Java的性能损失是什么? 最佳答案 在groovy中声明类型并不能神奇地加快速度。它仍然是groovy代码,需要通过MOP以防某些内容发生动态更改。您不会仅仅因为提供了类型信息就获得了静态链接。对于groovy代码速度不够快的性能敏感的事情

java - 如何重定向 Groovy 脚本的输出?

我想知道是否有任何方法可以更改我从Java代码执行的groovy脚本的默认输出(System.out)。Java代码如下:publicvoidexec(Filefile,OutputStreamoutput)throwsException{GroovyShellshell=newGroovyShell();shell.evaluate(file);}以及示例groovy脚本:defname='World'println"Hello$name!"当前方法的执行,评估编写“HelloWorld!”的脚本到控制台(System.out)。如何将输出重定向到作为参数传递的OutputStrea