Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
RE: [tigerstripe-users] Velocity classloader error"java.lang.NoClassDefFoundError: org/apache/log/format/Formatter"

You also might want to use a fresh install of Eclipse. As Eric says we
have never run into this problem. I wonder - what version of Eclipse are
you using and do you have any other 'special' plugins installed? I
wonder if it is a conflict with something else.

Steve

-----Original Message-----
From: tigerstripe-users-bounces@xxxxxxxxxxx
[mailto:tigerstripe-users-bounces@xxxxxxxxxxx] On Behalf Of KV
Sent: Tuesday, May 06, 2008 5:29 PM
To: Tigerstripe Users list
Subject: Re: [tigerstripe-users] Velocity classloader
error"java.lang.NoClassDefFoundError: org/apache/log/format/Formatter"

Eric,

I logged a request in bugzilla.
I tried already with a clean workspace. I am planning to do it again and
i will update on this.

- Kalyan

On Wed, May 7, 2008 at 12:39 AM, Eric Dillon <erdillon@xxxxxxxxx> wrote:
> I am still confused. Why is it that you are running into this error, 
> when we  don't. We have been using this for close to a year in
production at Cisco...
>  And didn't encounter that problem, although both our models and 
> generation  plugins are quite involved.
>
>  How about starting from scratch? Have you tried to use a clean 
> workspace,  new project, simple template to isolate this issue?
>
>  The Velocity-1.5.jar that we include in the plugins is straight  
> out-of-the-box from the Apache velocity site (we can distribute the 
> binary  without touching it. Distributing a modified version would 
> need to be  reviewed by Eclipse Legal). We haven't had to change any 
> of the default  settings yet to my best knowledge.
>
>  Dumping the classpath of a generation plugin is certainly an option. 
> Would  you mind logging this as bug in Bugzilla? I could add this in 
> the code so  you could pick it up from a nightly build if that helps?
>
>  Eric
>
>
>
>  On 5/6/08 4:21 PM, "KV" <kalyan.abbaraju@xxxxxxxxx> wrote:
>
>  > Hi Eric,
>  >
>
>
> > Thanks for the details. I got a picture on the lib directory.
>  > As you suggested I tried to add this Avalon logging jar to my 
> plug-in  > dependency list velocity did not pick up. May be I have 
> done some  > thing wrong. I still have to check on this.
>  >
>  >> From the stack trace, class loading seems to be failing in  > 
> VelocityEngine.init() itself. I do not think macro execution started  
> >  at all. But to confirm it I am trying to debug it further.
>  >  Based on velocity manuals (links below) and velocity-1.5 source 
> code,  >  the default value for the log class is Apache Avalon. since 
> the  >  relevant jar is not present velocity initialization is
failing.
>  >
>  > 
> http://velocity.apache.org/engine/releases/velocity-1.5/developer-guid
> e.html#v  > elocity_configuration_keys_and_values
>  >
>  > 
> http://velocity.apache.org/engine/releases/velocity-1.5/developer-guid
> e.html#c
>  > onfiguring_logging
>  >
>  >  For your reference, here is the content from  >  > 
> velocity-1.5\src\java\org\apache\velocity\runtime\defaults\velocity.pr
> operties
>  >  runtime.log.logsystem.class =
>  >
>  > 
> org.apache.velocity.runtime.log.AvalonLogChute,org.apache.velocity.run
> time.log  > .Log4JLogChute,org.apache.velocity.runtime.log.JdkLogChute
>  >  runtime.log = velocity.log
>  >
>  >   I have some more questions:
>  >   - Based on the above information is there any possibility of
>  > changing run time logger for velocity in tigerstripe? At least can 
> it  > be a
>  >   minor requirement for future releases?
>  >   - Is there any way to dump the classpath in tigerstipe.log or
some
>  >   other log during the plugin generation?
>  >
>  >   Regards
>  >   Kalyan
>  >
>  >
>  >>  On Tue, May 6, 2008 at 11:03 PM, Eric Dillon <erdillon@xxxxxxxxx>
wrote:
>  >>> Hi Kalyan,
>  >>>
>  >>>  See my comments/responses inline.
>  >>>
>  >>>  Still, I'm surprise we haven't run into this here. Are you able 
> to figure  >>>  out what is the trigger of all this in the velocity
templates you're using?
>  >>>
>  >>>  Eric
>  >>>
>  >>>
>  >>>
>  >>>  On 5/6/08 2:52 PM, "KV" <kalyan.abbaraju@xxxxxxxxx> wrote:
>  >>>
>  >>>> Hi Eric,
>  >>>>
>  >>>> Yes. The generation is completely failing. I did ensure that I 
> am  >>>> using only one velocity jar file.
>  >>>> And also I have posted this question in velocity users list 
> also. But  >>>> at the moment i did not get any new answer. I am 
> currently planning to  >>>> check the following two options.
>  >>>>
>  >>>> 1) Include the relevant jar
>  >>>> I checked for the class "org/apache/log/format/Formatter" and I 
> found  >>>> it in avalon-logkit-current.jar from apache.
>  >>>> I downloaded this jar and copied to tigerstripe/lib directory to

> >>>> verify it works. But no luck.
>  >>>  Well, the tigerstripe/lib is only used when running Tigerstripe 
> headless  >>>  (i.e. Outside of the IDE from Maven e.g.). So if you 
> added the .jar there  >>> it  >>>  would not have been picked up.
>  >>>  You want to package it with your generation plugin as an 
> additional  >>>  classpath entry. This way the content of the .jar is 
> going to be available  >>>  to velocity at runtime. To do so, copy it
in your generation project.
>  >>>  Open the ts-plugin.xml and on the "runtime" tab, add the .jar as

> a  >>> classpath  >>>  entry. Save the ts-plugin.xml file.
>  >>>
>  >>>  Try to re-deploy and run.
>  >>>
>  >>>
>  >>>>
>  >>>> 2) Check with velocity if another log instance can be used. for 
> example  >>>> log4j.
>  >>>> At the moment i am working on this. I can update you once I am  
> >>>> successful in this.
>  >>>>
>  >>>> But I would like to understand the relevance of tigerstripe/lib

> >>>> directory under eclipse? Can you please enlighten me under what  
> >>>> circumstances  I can use this directory?
>  >>>> Also if you have any other suggestions it would help me a lot.
>  >>>  As mentioned above, this tigerstripe/lib is only relevant when 
> running  >>>  headless. Any .jar that needs to be visible from a 
> generation plugin should  >>>  be packaged as an additional classpath
entry as explained above.
>  >>>
>  >>>  This was designed so that you can include any .jar in the code 
> of a  >>>  generation plugin.
>  >>>
>  >>>
>  >>>>
>  >>>> Thanks & Best Regards
>  >>>> Kalyan
>  >>>>
>  >>>> On Tue, May 6, 2008 at 5:30 PM, Eric Dillon <erdillon@xxxxxxxxx>
wrote:
>  >>>>> Hi Kalyan,
>  >>>>>
>  >>>>>  I am afraid I don't know what is going on here. I am tempted 
> however to  >>>>>  blame it on velocity :-).
>  >>>>>
>  >>>>>  I did google the exception and saw your post on some other 
> forum. I saw a  >>>>>  note there about having multiple instances of 
> the velocity-1.5.jar which  >>>>> is  >>>>>  not the case here.
>  >>>>>
>  >>>>>  Now, what are the symptoms of the error (beyond the log in the
mail)?
>  >>>>> Does
>  >>>>>  your generation fail completely?
>  >>>>>
>  >>>>>  Eric
>  >>>>>
>  >>>>>
>  >>>>>
>  >>>>>
>  >>>>>  On 5/2/08 11:54 AM, "KV" <kalyan.abbaraju@xxxxxxxxx> wrote:
>  >>>>>
>  >>>>>> Hi,
>  >>>>>>
>  >>>>>>  I am getting the following class loader error while doing the

> code  >>>>>> generation with my plugin. I tried to include both log4j 
> and  >>>>>> commons-logging explicitly to project class path. But it
did not help.
>  >>>>>>
>  >>>>>> Can you please suggest a solution?
>  >>>>>> 2008-05-02 19:41:51,515 - Log4JLogChute initialized using file

> >>>>>> 'velocity.log'
>  >>>>>> 2008-05-02 19:41:51,515 - Starting Apache Velocity v1.5
(compiled:
>  >>>>>> 2007-02-22 08:52:29)
>  >>>>>> 2008-05-02 19:41:51,515 - Default Properties File:
>  >>>>>> org\apache\velocity\runtime\defaults\velocity.properties
>  >>>>>> 2008-05-02 19:41:51,515 - Trying to use logger class  >>>>>> 
> org.apache.velocity.runtime.log.AvalonLogChute
>  >>>>>> 2008-05-02 19:41:51,515 - Couldn't find class  >>>>>> 
> org.apache.velocity.runtime.log.AvalonLogChute or necessary supporting

> >>>>>> classes in classpath.
>  >>>>>> java.lang.NoClassDefFoundError: 
> org/apache/log/format/Formatter  >>>>>> at 
> java.lang.Class.forName0(Native Method)  >>>>>> at 
> java.lang.Class.forName(Unknown Source)  >>>>>> at 
> org.apache.velocity.util.ClassUtils.getClass(ClassUtils.java:63)
>  >>>>>> at 
> org.apache.velocity.util.ClassUtils.getNewInstance(ClassUtils.java:95)
>  >>>>>> at
>  >>>>>> 
> org.apache.velocity.runtime.log.LogManager.createLogChute(LogManager.j
> ava
>  >>>>>> :14
>  >>>>>> 7)
>  >>>>>> at
>  >>>>>> 
> org.apache.velocity.runtime.log.LogManager.updateLog(LogManager.java:2
> 08)
>  >>>>>> at
>  >>>>>> 
> org.apache.velocity.runtime.RuntimeInstance.initializeLog(RuntimeInsta
> nce
>  >>>>>> .ja
>  >>>>>> va
>  >>>>>> :728)
>  >>>>>> at
>  >>>>>>
>  
> org.apache.velocity.runtime.RuntimeInstance.init(RuntimeInstance.java:
> 240>>>>>>
>  )
>  >>>>>> at
>  >>>>>>
>  
> org.apache.velocity.runtime.RuntimeInstance.init(RuntimeInstance.java:
> 534>>>>>>
>  )
>  >>>>>> at 
> org.apache.velocity.app.VelocityEngine.init(VelocityEngine.java:144)
>  >>>>>> at
>  >>>>>> 
> org.eclipse.tigerstripe.workbench.internal.core.project.pluggable.rule
> s.T
>  >>>>>> emp
>  >>>>>> la
>  >>>>>> 
> teBasedRule.setClasspathLoaderForVelocity(TemplateBasedRule.java:329)
>  >>>>>> at
>  >>>>>> 
> org.eclipse.tigerstripe.workbench.internal.core.project.pluggable.rule
> s.A
>  >>>>>> rti
>  >>>>>> fa
>  >>>>>> ctBasedRule.trigger(ArtifactBasedRule.java:192)
>  >>>>>> at
>  >>>>>> 
> org.eclipse.tigerstripe.workbench.internal.core.plugin.pluggable.Plugi
> nRu
>  >>>>>> leE
>  >>>>>> xe
>  >>>>>> cutor.trigger(PluginRuleExecutor.java:102)
>  >>>>>> at
>  >>>>>> 
> org.eclipse.tigerstripe.workbench.internal.core.plugin.pluggable.Plugg
> abl
>  >>>>>> ePl
>  >>>>>> ug
>  >>>>>> in.trigger(PluggablePlugin.java:123)
>  >>>>>> at
>  >>>>>> 
> org.eclipse.tigerstripe.workbench.internal.core.plugin.PluginHousing.t
> rig
>  >>>>>> ger
>  >>>>>> (P
>  >>>>>> luginHousing.java:40)
>  >>>>>> at
>  >>>>>> 
> org.eclipse.tigerstripe.workbench.internal.core.plugin.PluginConfig.tr
> igg
>  >>>>>> er(
>  >>>>>> Pl
>  >>>>>> uginConfig.java:250)
>  >>>>>> at
>  >>>>>> 
> org.eclipse.tigerstripe.workbench.internal.core.generation.M1Generator
> .in
>  >>>>>> ter
>  >>>>>> na
>  >>>>>> lPluginLoop(M1Generator.java:610)  >>>>>> at  >>>>>> 
> org.eclipse.tigerstripe.workbench.internal.core.generation.M1Generator
> .in
>  >>>>>> ter
>  >>>>>> na
>  >>>>>> lRun(M1Generator.java:553)
>  >>>>>> at
>  >>>>>> 
> org.eclipse.tigerstripe.workbench.internal.core.generation.M1Generator
> .ru
>  >>>>>> n(M
>  >>>>>> 1G
>  >>>>>> enerator.java:350)
>  >>>>>> at
>  >>>>>> 
> org.eclipse.tigerstripe.workbench.eclipse.wizards.generate.NewTigerstr
> ipe
>  >>>>>> Run
>  >>>>>> Wi
>  >>>>>> zard.finishPage(NewTigerstripeRunWizard.java:131)
>  >>>>>> at
>  >>>>>> 
> org.eclipse.tigerstripe.workbench.eclipse.wizards.NewTSElementWizard$2
> .ru
>  >>>>>> n(N
>  >>>>>> ew
>  >>>>>> TSElementWizard.java:193)
>  >>>>>> at
>  >>>>>> 
> org.eclipse.jdt.internal.core.BatchOperation.executeOperation(BatchOpe
> rat
>  >>>>>> ion
>  >>>>>> .j
>  >>>>>> ava:39)
>  >>>>>> at
>  >>>>>> 
> org.eclipse.jdt.internal.core.JavaModelOperation.run(JavaModelOperatio
> n.j
>  >>>>>> ava
>  >>>>>> :7
>  >>>>>> 20)
>  >>>>>> at 
> org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1797)
>  >>>>>> at org.eclipse.jdt.core.JavaCore.run(JavaCore.java:4466)
>  >>>>>> at
>  >>>>>> 
> org.eclipse.jdt.internal.ui.actions.WorkbenchRunnableAdapter.run(Workb
> enc
>  >>>>>> hRu
>  >>>>>> nn
>  >>>>>> ableAdapter.java:87)
>  >>>>>> at
>  >>>>>> 
> org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalC
> ont
>  >>>>>> ext
>  >>>>>> .j
>  >>>>>> ava:113)
>  >>>>>> 2008-05-02 19:41:51,515 - Trying to use logger class  >>>>>> 
> org.apache.velocity.runtime.log.Log4JLogChute
>  >>>>>> 2008-05-02 19:41:51,515 - Using logger class  >>>>>> 
> org.apache.velocity.runtime.log.Log4JLogChute
>  >>>>>> 2008-05-02 19:41:51,515 - Default ResourceManager 
> initializing. (class  >>>>>> 
> org.apache.velocity.runtime.resource.ResourceManagerImpl)
>  >>>>>> 2008-05-02 19:41:51,515 - ResourceLoader instantiated:
>  >>>>>> org.apache.velocity.runtime.resource.loader.FileResourceLoader
>  >>>>>>
>  >>>>>> Regards
>  >>>>>> Kalyan
>  >>>>>> _______________________________________________
>  >>>>>> tigerstripe-users mailing list  >>>>>> 
> tigerstripe-users@xxxxxxxxxxx  >>>>>> 
> https://dev.eclipse.org/mailman/listinfo/tigerstripe-users
>  >>>>>
>  >>>>>  _______________________________________________
>  >>>>>  tigerstripe-users mailing list  >>>>>  
> tigerstripe-users@xxxxxxxxxxx  >>>>>  
> https://dev.eclipse.org/mailman/listinfo/tigerstripe-users
>  >>>>>
>  >>>>
>  >>>>
>  >>>
>  >>>  _______________________________________________
>  >>>  tigerstripe-users mailing list
>  >>>  tigerstripe-users@xxxxxxxxxxx
>  >>>  https://dev.eclipse.org/mailman/listinfo/tigerstripe-users
>  >>>
>  >>
>  >>
>  >>
>  >>
>  >>
>  >> --
>  >>  Kalyan Abbaraju
>  >>  Home +91 8066649703
>  >>  Mobile +91 99005 16895
>  >>
>  >
>  >
>
>  _______________________________________________
>  tigerstripe-users mailing list
>  tigerstripe-users@xxxxxxxxxxx
>  https://dev.eclipse.org/mailman/listinfo/tigerstripe-users
>



--
Kalyan Abbaraju
Home +91 8066649703
Mobile +91 99005 16895
_______________________________________________
tigerstripe-users mailing list
tigerstripe-users@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/tigerstripe-users


Back to the top