2

grails run-app在Eclipse中发现,目前给我的例外低于我的谷歌应用程序引擎/ Grails的测试应用:Grails的 - 班“org.grails.tomcat.TomcatLoader”未在CLASSPATH

Enhancing JDO classes 
    [enhance] DataNucleus Enhancer (version 1.1.4) : Enhancement of classes 
    [enhance] Jan 24, 2010 5:11:42 AM org.datanucleus.metadata.MetaDataManager loadClasses 
    [enhance] SEVERE: Class "org.grails.tomcat.TomcatLoader" was not found in the CLASSPATH. Please check your specification and your CLASSPATH. 
    [enhance] org.datanucleus.exceptions.ClassNotResolvedException: Class "org.grails.tomcat.TomcatLoader" was not found in the CLASSPATH. Please check your specification and your CLASSPATH. 
    [enhance]  at org.datanucleus.JDOClassLoaderResolver.classForName(JDOClassLoaderResolver.java:250) 
    [enhance]  at org.datanucleus.JDOClassLoaderResolver.classForName(JDOClassLoaderResolver.java:415) 
    [enhance]  at org.datanucleus.metadata.MetaDataManager.loadClasses(MetaDataManager.java:379) 
    [enhance]  at org.datanucleus.enhancer.DataNucleusEnhancer.getFileMetadataForInput(DataNucleusEnhancer.java:743) 
    [enhance]  at org.datanucleus.enhancer.DataNucleusEnhancer.enhance(DataNucleusEnhancer.java:545) 
    [enhance]  at org.datanucleus.enhancer.DataNucleusEnhancer.main(DataNucleusEnhancer.java:1252) 
    [enhance]  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    [enhance]  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
    [enhance]  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
    [enhance]  at java.lang.reflect.Method.invoke(Method.java:597) 
    [enhance]  at com.google.appengine.tools.enhancer.Enhancer.execute(Enhancer.java:57) 
    [enhance]  at com.google.appengine.tools.enhancer.Enhance.<init>(Enhance.java:60) 
    [enhance]  at com.google.appengine.tools.enhancer.Enhance.main(Enhance.java:41) 
    [enhance] DataNucleus Enhancer completed with success for 0 classes. Timings : input=487 ms, enhance=0 ms, total=487 ms. Consult the log for full details 
    [enhance] DataNucleus Enhancer completed and no classes were enhanced. Consult the log for full details 

我在使用Spring Tools Suite(STS)创建Grails项目并安装应用程序引擎插件“grails install-plugin app-engine”之后得到此错误。之前,我安装了Grails项目正确运行的app-engine插件。

任何想法?

+0

相关的JIRA问题:http://jira.codehaus.org/browse/GRAILSPLUGINS-1889 – 2010-01-26 02:34:58

回答

3

您是否尝试卸载Tomcat插件?它在默认情况下安装在新应用程序中,但看起来像使用GAE插件时会引起问题。

+0

还没有,我会试试并报告回来。 – 2010-01-25 16:43:43

+0

运行“uninstall-plugin tomcat”解析了TomcatLoader异常 – 2010-01-26 03:41:09

0

很可能,来自DataNucleus Enhancer的错误信息是骗人的。它可能找不到org.grails.tomcat.TomcatLoader的相关类。 Grails TomcatLoader类的所有依赖库在你的类路径中吗?我有类似的情况 - 错误消息是不正确的。

0

你得到这个错误的原因是tomcat插件还没有被卸载。 请执行下列操作步骤:

  1. CD app_directory
  2. Grails的列表,插件

你会看到在底部插件和整个列表将安装在您的应用程序 插件列表记下的tomcat的version_number

  1. Grails的卸载,插件tomcat的VERSION_NUMBER

tomcat插件现在将消失,您将看不到Tomcat加载器错误。尝试使用grails应用程序引擎插件时,我遇到了类似的错误,并在上述步骤后消失。