无法运行Grails项目GGTS

时间:2013-04-29 13:36:02

标签: grails grails-2.0 sts-springsourcetoolsuite

我有一个grails项目,它在命令行中运行得很好。当我尝试使用

在GGTS中运行它时
grails run-app

它第一次运行没有任何错误。然后,我停止了服务器并使用grails run-app再次运行它。现在出现以下错误。

| Error 2013-04-29 15:32:14,965 [localhost-startStop-1] ERROR context.GrailsContextLoader  - Error initializing the application: Error creating bean with name 'annotationHandlerMapping': Invocation of init method failed; nested exception is java.lang.NoClassDefFoundError: org/codehaus/jackson/annotate/JacksonAnnotation
Message: Error creating bean with name 'annotationHandlerMapping': Invocation of init method failed; nested exception is java.lang.NoClassDefFoundError: org/codehaus/jackson/annotate/JacksonAnnotation
Line | Method
->>  334 | innerRun  in java.util.concurrent.FutureTask$Sync
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
|    166 | run       in java.util.concurrent.FutureTask
|   1145 | runWorker in java.util.concurrent.ThreadPoolExecutor
|    615 | run       in java.util.concurrent.ThreadPoolExecutor$Worker
^    722 | run . . . in java.lang.Thread
Caused by NoClassDefFoundError: org/codehaus/jackson/annotate/JacksonAnnotation
->> 3098 | initAnnotationsIfNecessary in java.lang.Class
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
|   3057 | getAnnotation in     ''
|   3070 | isAnnotationPresent in     ''
|    334 | innerRun  in java.util.concurrent.FutureTask$Sync
|    166 | run . . . in java.util.concurrent.FutureTask
|   1145 | runWorker in java.util.concurrent.ThreadPoolExecutor
|    615 | run . . . in java.util.concurrent.ThreadPoolExecutor$Worker
^    722 | run       in java.lang.Thread
Caused by ClassNotFoundException: org.codehaus.jackson.annotate.JacksonAnnotation
->>  175 | findClass in org.codehaus.groovy.tools.RootLoader
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
|    423 | loadClass in java.lang.ClassLoader
|    147 | loadClass in org.codehaus.groovy.tools.RootLoader
|    356 | loadClass in java.lang.ClassLoader
|   3098 | initAnnotationsIfNecessary in java.lang.Class
|   3057 | getAnnotation in     ''
|   3070 | isAnnotationPresent in     ''
|    334 | innerRun  in java.util.concurrent.FutureTask$Sync
|    166 | run . . . in java.util.concurrent.FutureTask
|   1145 | runWorker in java.util.concurrent.ThreadPoolExecutor
|    615 | run . . . in java.util.concurrent.ThreadPoolExecutor$Worker
^    722 | run       in java.lang.Thread

我还尝试删除.grails / 2.2.1 / projects / MyProject目录并更新了依赖项。刷新依赖项工作正常,但run-app在GGTS中不起作用。 我该怎么办?

2 个答案:

答案 0 :(得分:2)

事实证明,问题是由Java 7版本引起的。不要用户更新21然后错误将消失。

答案 1 :(得分:1)

像往常一样,按此顺序尝试以下

grails clean
grails refresh-dependencies
grails run-app

如果仍然无效,您可能需要删除 .grails / 2.2.2 / projects / *并重复上述步骤。