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

rathnadhar.kolar at wipro.com rathnadhar.kolar at wipro.com
Tue Mar 1 05:42:56 CET 2011


Namasthe,

I have logged the bug: LBGENERAL-45.

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 15:58
To: logback users list
Subject: Re: [logback-user] Logback.groovy configuration results in
java.lang.VerifyError exception.


Glad to hear that the problem could be solved. Could you please enter a
jira issue asking for the FAQ entry?

On 28.02.2011 11:27, rathnadhar.kolar at wipro.com wrote:
> Namasthe Ceki,
>
> Yes the offending package was json-lib 2.1.
>
> I removed it from the class path. The logback.groovy configuration 
> worked!
>
> Thanks for the help.
>
> I suggest this issue be put as a faq. I spent nearly 5 days figuring 
> as to how to use logback.groovy !
>
> 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:16
> To: logback users list
> Subject: Re: [logback-user] Logback.groovy configuration results in 
> java.lang.VerifyError exception.
>
> 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/O
>>>> b
>>>> j
>>>> 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.createWithCus
>>>> t
>>>> o
>>>> m
>>>> Lookup(_MetaClassRegistry.java:127_)
>>>>
>>>> at
>>>> groovy.lang.MetaClassRegistry$MetaClassCreationHandle.create(_MetaC
>>>> l
>>>> a
>>>> s
>>>> sRegistry.java:122_)
>>>>
>>>> at
>>>> org.codehaus.groovy.reflection.ClassInfo.getMetaClassUnderLock(_Cla
>>>> s
>>>> s
>>>> I
>>>> nfo.java:165_)
>>>>
>>>> at
>>>>
>>
org.codehaus.groovy.reflection.ClassInfo.getMetaClass(_ClassInfo.java:
>>>> 195_)
>>>>
>>>> at
>>>> org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.getMeta
>>>> C
>>>> l
>>>> a
>>>> ss(_MetaClassRegistryImpl.java:214_)
>>>>
>>>> at
>>>>
>>
org.codehaus.groovy.runtime.InvokerHelper.getMetaClass(_InvokerHelper.
>>>> java:747_)
>>>>
>>>> at
>>>> org.codehaus.groovy.runtime.callsite.CallSiteArray.createPojoSite(_
>>>> C
>>>> a
>>>> l
>>>> lSiteArray.java:107_)
>>>>
>>>> at
>>>> org.codehaus.groovy.runtime.callsite.CallSiteArray.createCallSite(_
>>>> C
>>>> a
>>>> l
>>>> lSiteArray.java:148_)
>>>>
>>>> at
>>>> org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(_Cal
>>>> l
>>>> S
>>>> i
>>>> teArray.java:40_)
>>>>
>>>> at
>>>> org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(_Abstrac
>>>> t
>>>> C
>>>> a
>>>> llSite.java:116_)
>>>>
>>>> at
>>>> org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(_Abstrac
>>>> t
>>>> C
>>>> a
>>>> llSite.java:124_)
>>>>
>>>> at
>>>> ch.qos.logback.classic.gaffer.ConfigurationDelegate.appender(Config
>>>> u
>>>> r
>>>> a
>>>> tionDelegate.groovy:117)
>>>>
>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(_Native Method_)
>>>>
>>>> at
>>>>
>>
sun.reflect.NativeMethodAccessorImpl.invoke(_NativeMethodAccessorImpl.
>>>> java:39_)
>>>>
>>>> at
>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(_DelegatingMethodAc
>>>> c
>>>> e
>>>> 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.invok
>>>> e
>>>> (
>>>> _
>>>> MixinInstanceMetaMethod.java:53_)
>>>>
>>>> at
>>>> org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoMetaMet
>>>> h
>>>> o
>>>> 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.defaultCallCurre
>>>> n
>>>> t
>>>> (
>>>> _CallSiteArray.java:44_)
>>>>
>>>> at
>>>> org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(_
>>>> A
>>>> b
>>>> s
>>>> tractCallSite.java:141_)
>>>>
>>>> at
>>>> org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(_
>>>> A
>>>> b
>>>> s
>>>> tractCallSite.java:157_)
>>>>
>>>> at Script1.run(Script1.groovy:24)
>>>>
>>>> at Script1$run.call(Unknown Source)
>>>>
>>>> at
>>>> org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(_Cal
>>>> l
>>>> S
>>>> i
>>>> teArray.java:40_)
>>>>
>>>> at
>>>> org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(_Abstrac
>>>> t
>>>> C
>>>> a
>>>> llSite.java:116_)
>>>>
>>>> at
>>>> org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(_Abstrac
>>>> t
>>>> C
>>>> a
>>>> llSite.java:120_)
>>>>
>>>> at
>>>> ch.qos.logback.classic.gaffer.GafferConfigurator.run(GafferConfigur
>>>> a
>>>> t
>>>> o
>>>> r.groovy:59)
>>>>
>>>> at
>>>> ch.qos.logback.classic.gaffer.GafferConfigurator$run.callCurrent(Un
>>>> k
>>>> n
>>>> o
>>>> wn
>>>> Source)
>>>>
>>>> at
>>>> org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurre
>>>> n
>>>> t
>>>> (
>>>> _CallSiteArray.java:44_)
>>>>
>>>> at
>>>> org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(_
>>>> A
>>>> b
>>>> s
>>>> tractCallSite.java:141_)
>>>>
>>>> at
>>>> org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(_
>>>> A
>>>> b
>>>> s
>>>> tractCallSite.java:149_)
>>>>
>>>> at
>>>> ch.qos.logback.classic.gaffer.GafferConfigurator.run(GafferConfigur
>>>> a
>>>> t
>>>> o
>>>> r.groovy:37)
>>>>
>>>> at
>>>> ch.qos.logback.classic.gaffer.GafferUtil.runGafferConfiguratorOn(_G
>>>> a
>>>> f
>>>> 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(_ContextI
>>>> n
>>>> i
>>>> 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:1
>>>> 1
>>>> 1
>>>> _
>>>> )
>>>>
>>>> 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
>
>
> _______________________________________________
> 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


_______________________________________________
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


More information about the Logback-user mailing list