Grails - 在 CLASSPATH 中找不到类“org.grails.tomcat.TomcatLoader”
-
22-09-2019 - |
题
grails run-app
目前,Eclipse 内部为我的 Google App Engine/Grails 测试应用程序提供了以下例外情况:
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 项目运行正常。
有任何想法吗?
解决方案
您是否尝试卸载Tomcat插件?它是默认安装在一个新的应用程序,但是当你使用GAE的插件看起来像它引起的问题。
其他提示
更可能,从DataNucleus将增强该错误消息是欺骗。它可能无法找到org.grails.tomcat.TomcatLoader的依赖类。是否所有的Grails TomcatLoader类的类路径中的依赖库?我也有类似的情况 - 该错误信息是不正确的。
出现此错误的原因是tomcat插件尚未卸载。执行以下步骤:
- cd 应用程序目录
- grails 列表插件
您将看到一个插件的全部列表,在底部将是为您的应用程序安装的插件列表,请注意tomcat version_number
- grails uninstall-plugin tomcat version_number
tomcat 插件现在将消失,您将不会看到 Tomcat 加载器错误。当我尝试使用 grails 应用程序引擎插件时,我遇到了类似的错误,并且在执行上述步骤后它就消失了。
不隶属于 StackOverflow