[logback-user] Logback.groovy configuration results in java.lang.VerifyError exception.

Ceki Gulcu ceki at qos.ch
Mon Feb 28 10:45:31 CET 2011


Groovy version 1.7.8 is fine. However, your project is probably *also*
pulling in an older version of Groovy. See 
http://jira.codehaus.org/browse/GROOVY-3802 which looks similar to your 
problem.

On 28.02.2011 10:47, rathnadhar.kolar at wipro.com wrote:
> Namasthe Ceki,
>
> I am using groovy-all-1.7.8.jar (Groovy 1.7.8) which according to Groovy
> (http://groovy.codehaus.org/) is absolutely latest stable version as of
> 28/Feb/2011.
>
> BTW which is the groovy version that is to be used?
>
> Regards
> Rathna
> ========================================================
> Rathnadhar.K.V
>
> "Aham Brahmasmi" Brhadaranyaka Upanishad 1.4.10
> ========================================================
>
>
>
>
> -----Original Message-----
> From: logback-user-bounces at qos.ch [mailto:logback-user-bounces at qos.ch]
> On Behalf Of Ceki Gulcu
> Sent: Monday, 28 February, 2011 15:08
> To: logback users list
> Subject: Re: [logback-user] Logback.groovy configuration results in
> java.lang.VerifyError exception.
>
>
> You are probably pulling in an older version of Groovy. See for example:
> http://jira.codehaus.org/browse/GROOVY-3802
>
> On 28.02.2011 10:07, rathnadhar.kolar at wipro.com wrote:
>> Namasthe Ceki,
>>
>> Its :
>>
>> java version "1.6.0_20"
>> Java(TM) SE Runtime Environment (build 1.6.0_20-b02) Java HotSpot(TM)
>> Client VM (build 16.3-b01, mixed mode, sharing)
>>
>>
>> This is what I get when I run java -version.
>>
>> I think its pointing to JRE ($JAVA_HOME/jre)...
>>
>> Regards
>> Rathnadhar.K.V
>> ========================================================
>> Rathnadhar.K.V
>>
>> "Aham Brahmasmi" Brhadaranyaka Upanishad 1.4.10
>> ========================================================
>>
>>
>>
>>
>> -----Original Message-----
>> From: logback-user-bounces at qos.ch [mailto:logback-user-bounces at qos.ch]
>> On Behalf Of Ceki Gulcu
>> Sent: Monday, 28 February, 2011 14:28
>> To: logback users list
>> Subject: Re: [logback-user] Logback.groovy configuration results in
>> java.lang.VerifyError exception.
>>
>> Hi Rathnadhar,
>> I can run config file finr. It runs without generating a
>> java.lang.VerifyError. Which JDK are you using?
>> --
>> Ceki
>>
>> On 28.02.2011 09:13, rathnadhar.kolar at wipro.com wrote:
>>> Namasthe,
>>>
>>> I have switched from log4j to logback. For configuration, I initially
>
>>> worked with logback.xml which worked fine. I wanted to get rid of xml
>
>>> so re-wrote the logback.xml in groovy.
>>>
>>> The logback.groovy is as below:
>>>
>>> *import*ch.qos.logback.classic.PatternLayout
>>>
>>> *import*ch.qos.logback.classic.filter.ThresholdFilter
>>>
>>> *import*ch.qos.logback.classic.net.SMTPAppender
>>>
>>> *import*ch.qos.logback.core.ConsoleAppender
>>>
>>> *import*ch.qos.logback.core.rolling.FixedWindowRollingPolicy
>>>
>>> *import*ch.qos.logback.core.rolling.RollingFileAppender
>>>
>>> *import*ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy
>>>
>>> *import**static*ch.qos.logback.classic.Level.ERROR
>>>
>>> *import**static*ch.qos.logback.classic.Level.INFO
>>>
>>> appender("RootFileAppender", RollingFileAppender) {
>>>
>>> file = "project"
>>>
>>> append = *true*
>>>
>>> filter(ThresholdFilter) {
>>>
>>> level = INFO
>>>
>>> }
>>>
>>> rollingPolicy(FixedWindowRollingPolicy) {
>>>
>>> fileNamePattern = "project_log.%i"
>>>
>>> maxIndex = 1
>>>
>>> }
>>>
>>> triggeringPolicy(SizeBasedTriggeringPolicy) {
>>>
>>> maxFileSize = 1000000
>>>
>>> }
>>>
>>> layout(PatternLayout) {
>>>
>>> pattern = "%d{yyyy-MM-dd HH:mm:ss}, %p, %c, %t, %ex, %F, %L, %C{1},
>>> %M
>> %m%n"
>>>
>>> }
>>>
>>> }
>>>
>>> appender("RootConsoleAppender", ConsoleAppender) {
>>>
>>> filter(ThresholdFilter) {
>>>
>>> level = INFO
>>>
>>> }
>>>
>>> layout(PatternLayout) {
>>>
>>> pattern = "%d{yyyy-MM-dd HH:mm:ss}, %p, %c, %t %m%n"
>>>
>>> }
>>>
>>> }
>>>
>>> appender("RootEmailAppender", SMTPAppender) {
>>>
>>> filter(ThresholdFilter) {
>>>
>>> level = ERROR
>>>
>>> }
>>>
>>> bufferSize = 10
>>>
>>> SMTPHost = "smtp.hostaddress"
>>>
>>> to = "logback.user at xyz.com"
>>>
>>> from = " logback.user at xyz.com "
>>>
>>> username = "user"
>>>
>>> password = "password"
>>>
>>> subject = "Logback Error"
>>>
>>> layout(PatternLayout) {
>>>
>>> pattern = "%d{yyyy-MM-dd HH:mm:ss}, %p, %c, %t, %ex, %F, %L, %C{1},
>>> %M
>> %m%n"
>>>
>>> }
>>>
>>> }
>>>
>>> root(INFO, ["RootFileAppender", "RootConsoleAppender",
>>> "RootEmailAppender"])
>>>
>>> (Some values have been masked for security reasons).
>>>
>>> I put this file in the classpath.
>>>
>>> After that I started my application, but I got this exception:
>>>
>>> Failed to instantiate [ch.qos.logback.classic.LoggerContext]
>>>
>>> Reported exception:
>>>
>>> java.lang.VerifyError: (class:
>>> groovy/runtime/metaclass/java/lang/StringMetaClass, method:
>>> super$2$invokeMethod signature:
>>> (Ljava/lang/Class;Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Obj
>>> e
>>> ct;ZZ)Ljava/lang/Object;) Illegal use of nonvirtual function call
>>>
>>> at java.lang.Class.forName0(_Native Method_)
>>>
>>> at java.lang.Class.forName(_Class.java:169_)
>>>
>>> at
>>> groovy.lang.MetaClassRegistry$MetaClassCreationHandle.createWithCusto
>>> m
>>> Lookup(_MetaClassRegistry.java:127_)
>>>
>>> at
>>> groovy.lang.MetaClassRegistry$MetaClassCreationHandle.create(_MetaCla
>>> s
>>> sRegistry.java:122_)
>>>
>>> at
>>> org.codehaus.groovy.reflection.ClassInfo.getMetaClassUnderLock(_Class
>>> I
>>> nfo.java:165_)
>>>
>>> at
>>>
> org.codehaus.groovy.reflection.ClassInfo.getMetaClass(_ClassInfo.java:
>>> 195_)
>>>
>>> at
>>> org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.getMetaCl
>>> a
>>> ss(_MetaClassRegistryImpl.java:214_)
>>>
>>> at
>>>
> org.codehaus.groovy.runtime.InvokerHelper.getMetaClass(_InvokerHelper.
>>> java:747_)
>>>
>>> at
>>> org.codehaus.groovy.runtime.callsite.CallSiteArray.createPojoSite(_Ca
>>> l
>>> lSiteArray.java:107_)
>>>
>>> at
>>> org.codehaus.groovy.runtime.callsite.CallSiteArray.createCallSite(_Ca
>>> l
>>> lSiteArray.java:148_)
>>>
>>> at
>>> org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(_CallS
>>> i
>>> teArray.java:40_)
>>>
>>> at
>>> org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(_AbstractC
>>> a
>>> llSite.java:116_)
>>>
>>> at
>>> org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(_AbstractC
>>> a
>>> llSite.java:124_)
>>>
>>> at
>>> ch.qos.logback.classic.gaffer.ConfigurationDelegate.appender(Configur
>>> a
>>> tionDelegate.groovy:117)
>>>
>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(_Native Method_)
>>>
>>> at
>>>
> sun.reflect.NativeMethodAccessorImpl.invoke(_NativeMethodAccessorImpl.
>>> java:39_)
>>>
>>> at
>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(_DelegatingMethodAcce
>>> s
>>> sorImpl.java:25_)
>>>
>>> at java.lang.reflect.Method.invoke(_Method.java:597_)
>>>
>>> at
>>>
> org.codehaus.groovy.reflection.CachedMethod.invoke(_CachedMethod.java:
>>> 90_)
>>>
>>> at
>>> org.codehaus.groovy.runtime.metaclass.MixinInstanceMetaMethod.invoke(
>>> _
>>> MixinInstanceMetaMethod.java:53_)
>>>
>>> at
>>> org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoMetaMetho
>>> d
>>> SiteNoUnwrapNoCoerce.invoke(_PogoMetaMethodSite.java:307_)
>>>
>>> at
>>> org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(_
>>> P
>>> ogoMetaMethodSite.java:51_)
>>>
>>> at
>>> org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent
>>> (
>>> _CallSiteArray.java:44_)
>>>
>>> at
>>> org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(_Ab
>>> s
>>> tractCallSite.java:141_)
>>>
>>> at
>>> org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(_Ab
>>> s
>>> tractCallSite.java:157_)
>>>
>>> at Script1.run(Script1.groovy:24)
>>>
>>> at Script1$run.call(Unknown Source)
>>>
>>> at
>>> org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(_CallS
>>> i
>>> teArray.java:40_)
>>>
>>> at
>>> org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(_AbstractC
>>> a
>>> llSite.java:116_)
>>>
>>> at
>>> org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(_AbstractC
>>> a
>>> llSite.java:120_)
>>>
>>> at
>>> ch.qos.logback.classic.gaffer.GafferConfigurator.run(GafferConfigurat
>>> o
>>> r.groovy:59)
>>>
>>> at
>>> ch.qos.logback.classic.gaffer.GafferConfigurator$run.callCurrent(Unkn
>>> o
>>> wn
>>> Source)
>>>
>>> at
>>> org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent
>>> (
>>> _CallSiteArray.java:44_)
>>>
>>> at
>>> org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(_Ab
>>> s
>>> tractCallSite.java:141_)
>>>
>>> at
>>> org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(_Ab
>>> s
>>> tractCallSite.java:149_)
>>>
>>> at
>>> ch.qos.logback.classic.gaffer.GafferConfigurator.run(GafferConfigurat
>>> o
>>> r.groovy:37)
>>>
>>> at
>>> ch.qos.logback.classic.gaffer.GafferUtil.runGafferConfiguratorOn(_Gaf
>>> f
>>> erUtil.java:44_)
>>>
>>> at
>>> ch.qos.logback.classic.util.ContextInitializer.configureByResource(_C
>>> o
>>> ntextInitializer.java:67_)
>>>
>>> at
>>> ch.qos.logback.classic.util.ContextInitializer.autoConfig(_ContextIni
>>> t
>>> ializer.java:150_)
>>>
>>> at
>>> org.slf4j.impl.StaticLoggerBinder.init(_StaticLoggerBinder.java:85_)
>>>
>>> at
>>> org.slf4j.impl.StaticLoggerBinder.<clinit>(_StaticLoggerBinder.java:5
>>> 5
>>> _)
>>>
>>> at org.slf4j.LoggerFactory.bind(_LoggerFactory.java:121_)
>>>
>>> at
>>> org.slf4j.LoggerFactory.performInitialization(_LoggerFactory.java:111
>>> _
>>> )
>>>
>>> at
>>> org.slf4j.LoggerFactory.getILoggerFactory(_LoggerFactory.java:268_)
>>>
>>> at org.slf4j.LoggerFactory.getLogger(_LoggerFactory.java:241_)
>>>
>>> at
>>> src.temporalprocessing.StartProgram.<clinit>(_StartProgram.java:37_)
>>>
>>> When I switch from logback.groovy to logback.xml, everything works
>>> perfectly (both the configurations are equal in functionality).
>>>
>>> My google search did not yield useful information.
>>>
>>> I am using the following jars:
>>>
>>> 1.groovy-all-1.7.8.jar
>>>
>>> 2.logback-access-0.9.28.jar
>>>
>>> 3.logback-classic-0.9.28.jar
>>>
>>> 4.logback-core-0.9.28.jar
>>>
>>> 5.slf4j-api-1.6.1.jar
>>>
>>> Can somebody please help me to resolve the issue.
>>>
>>> Regards
>>>
>>> Rathnadhar.K.V
>>>
>>> *Please do not print this email unless it is absolutely necessary. *
>>>
>>> The information contained in this electronic message and any
>>> attachments to this message are intended for the exclusive use of the
>>> addressee(s) and may contain proprietary, confidential or privileged
>>> information. If you are not the intended recipient, you should not
>>> disseminate, distribute or copy this e-mail. Please notify the sender
>
>>> immediately and destroy all copies of this message and any
>> attachments.
>>>
>>> WARNING: Computer viruses can be transmitted via email. The recipient
>
>>> should check this email and any attachments for the presence of
>> viruses.
>>> The company accepts no liability for any damage caused by any virus
>>> transmitted by this email.
>>>
>>> www.wipro.com
>
>
> _______________________________________________
> Logback-user mailing list
> Logback-user at qos.ch
> http://qos.ch/mailman/listinfo/logback-user
>
> Please do not print this email unless it is absolutely necessary.
>
> The information contained in this electronic message and any attachments to this message are intended for the exclusive use of the addressee(s) and may contain proprietary, confidential or privileged information. If you are not the intended recipient, you should not disseminate, distribute or copy this e-mail. Please notify the sender immediately and destroy all copies of this message and any attachments.
>
> WARNING: Computer viruses can be transmitted via email. The recipient should check this email and any attachments for the presence of viruses. The company accepts no liability for any damage caused by any virus transmitted by this email.
>
> www.wipro.com
> _______________________________________________
> Logback-user mailing list
> Logback-user at qos.ch
> http://qos.ch/mailman/listinfo/logback-user




More information about the Logback-user mailing list