2013-05-28 4 views
5

Пожалуйста, помогите мне, я получаю сообщение об ошибке при запуске приложения grails.Grails 2.3 - run-app не работает

Мое приложение, работающее в Grails 2.1.4.

Я использую

Groovy 2.1.* 
Java 1.7 
Tomcat 7.0.37 

Я модернизировал мое заявление от Grails 2.1.4 2.3.0.M1. После того, как я получаю ошибку, как это:

| Loading Grails 2.3.0.M1 
| Configuring classpath 
| Error SLF4J: Class path contains multiple SLF4J bindings. 
| Error SLF4J: Found binding in [jar:file:/home/testuser/.m2/repository/org/grails/grails-plugin-log4j/2.3.0.M1/grails-plugin-log4j-2.3.0.M1.jar!/org/slf4j/impl/StaticLoggerBinder.class] 
| Error SLF4J: Found binding in [jar:file:/home/testuser/.m2/repository/org/slf4j/slf4j-log4j12/1.6.6/slf4j-log4j12-1.6.6.jar!/org/slf4j/impl/StaticLoggerBinder.class] 
| Error SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation. 
| Error SLF4J: Actual binding is of type [org.slf4j.impl.GrailsSlf4jLoggerFactory] 
| Configuring classpath. 
| Environment set to development..... 
| Packaging Grails application..... 
| Compiling 143 source files. 
Copying properties file... 
| Compiling 143 source files..... 
Updated web.xml for session information 
| Running Grails application 
/mycompany/dev/testuser/ws2/myapp\..\sub-app\deploy\dev\log4j.xml 
| Running Grails application. 
| Error SLF4J: Class path contains multiple SLF4J bindings. 
| Error SLF4J: Found binding in [jar:file:/home/testuser/.m2/repository/org/grails/grails-plugin-log4j/2.3.0.M1/grails-plugin-log4j-2.3.0.M1.jar!/org/slf4j/impl/StaticLoggerBinder.class] 
| Error SLF4J: Found binding in [jar:file:/home/testuser/.m2/repository/org/slf4j/slf4j-log4j12/1.6.6/slf4j-log4j12-1.6.6.jar!/org/slf4j/impl/StaticLoggerBinder.class] 
| Error SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation. 
| Error SLF4J: Actual binding is of type [org.slf4j.impl.GrailsSlf4jLoggerFactory] 
| Server running. Browse to http://localhost:8080/myapp 
Context initialization failed 
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'grailsApplication' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Invocation of init method failed; nested exception is org.codehaus.groovy.grails.exceptions.GrailsConfigurationException: Class not found loading Grails application: myapp.RefreshCustomerMatrixJob 
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) 
    at java.util.concurrent.FutureTask.run(FutureTask.java:166) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) 
    at java.lang.Thread.run(Thread.java:722) 
Caused by: org.codehaus.groovy.grails.exceptions.GrailsConfigurationException: Class not found loading Grails application: myapp.RefreshCustomerMatrixJob 
    ... 5 more 
Caused by: java.lang.ClassNotFoundException: myapp.RefreshCustomerMatrixJob 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:366) 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355) 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:423) 
    ... 5 more 
Error initializing the application: Error creating bean with name 'grailsApplication' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Invocation of init method failed; nested exception is org.codehaus.groovy.grails.exceptions.GrailsConfigurationException: Class not found loading Grails application: myapp.RefreshCustomerMatrixJob 
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'grailsApplication' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Invocation of init method failed; nested exception is org.codehaus.groovy.grails.exceptions.GrailsConfigurationException: Class not found loading Grails application: myapp.RefreshCustomerMatrixJob 
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) 
    at java.util.concurrent.FutureTask.run(FutureTask.java:166) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) 
    at java.lang.Thread.run(Thread.java:722) 
Caused by: org.codehaus.groovy.grails.exceptions.GrailsConfigurationException: Class not found loading Grails application: myapp.RefreshCustomerMatrixJob 
    ... 5 more 
Caused by: java.lang.ClassNotFoundException: myapp.RefreshCustomerMatrixJob 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:366) 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355) 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:423) 
    ... 5 more 
| Error Exception in thread "Thread-7" 
| Error java.lang.RuntimeException: Forked Grails VM exited with error 
| Error  at org.codehaus.groovy.grails.cli.fork.ForkedGrailsProcess$_attachOutputListener_closure5.doCall(ForkedGrailsProcess.groovy:220) 
| Error  at org.codehaus.groovy.grails.cli.fork.ForkedGrailsProcess$_attachOutputListener_closure5.doCall(ForkedGrailsProcess.groovy) 
| Error  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
| Error  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
| Error  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
| Error  at java.lang.reflect.Method.invoke(Method.java:601) 
| Error  at org.springsource.loaded.ri.ReflectiveInterceptor.jlrMethodInvoke(ReflectiveInterceptor.java:1243) 
| Error  at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90) 
| Error  at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233) 
| Error  at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1085) 
| Error  at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1110) 
| Error  at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:909) 
| Error  at groovy.lang.Closure.call(Closure.java:411) 
| Error  at groovy.lang.Closure.call(Closure.java:405) 
| Error  at org.codehaus.groovy.grails.cli.fork.ForkedGrailsProcess.attachOutputListener(ForkedGrailsProcess.groovy:228) 
| Error  at org.grails.plugins.tomcat.fork.ForkedTomcatServer.attachOutputListener(ForkedTomcatServer.groovy) 
| Error  at org.codehaus.groovy.grails.cli.fork.ForkedGrailsProcess.attachOutputListener(ForkedGrailsProcess.groovy) 
| Error  at org.grails.plugins.tomcat.fork.ForkedTomcatServer.attachOutputListener(ForkedTomcatServer.groovy) 
| Error  at org.codehaus.groovy.grails.cli.fork.ForkedGrailsProcess.fork(ForkedGrailsProcess.groovy:172) 
| Error  at org.grails.plugins.tomcat.fork.ForkedTomcatServer.fork(ForkedTomcatServer.groovy) 
| Error  at org.codehaus.groovy.grails.cli.fork.ForkedGrailsProcess.fork(ForkedGrailsProcess.groovy:141) 
| Error  at org.grails.plugins.tomcat.fork.ForkedTomcatServer.fork(ForkedTomcatServer.groovy) 
| Error  at org.grails.plugins.tomcat.fork.ForkedTomcatServer$_startSecure_closure1.doCall(ForkedTomcatServer.groovy:122) 
| Error  at org.grails.plugins.tomcat.fork.ForkedTomcatServer$_startSecure_closure1.doCall(ForkedTomcatServer.groovy) 
| Error  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
| Error  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
| Error  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
| Error  at java.lang.reflect.Method.invoke(Method.java:601) 
| Error  at org.springsource.loaded.ri.ReflectiveInterceptor.jlrMethodInvoke(ReflectiveInterceptor.java:1243) 
| Error  at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90) 
| Error  at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233) 
| Error  at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1085) 
| Error  at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1110) 
| Error  at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:909) 
| Error  at groovy.lang.Closure.call(Closure.java:411) 
| Error  at org.grails.plugins.tomcat.fork.ForkedTomcatServer$_startSecure_closure1.call(ForkedTomcatServer.groovy) 
| Error  at groovy.lang.Closure.call(Closure.java:405) 
| Error  at org.grails.plugins.tomcat.fork.ForkedTomcatServer$_startSecure_closure1.call(ForkedTomcatServer.groovy) 
| Error  at groovy.lang.Closure.run(Closure.java:492) 
| Error  at org.grails.plugins.tomcat.fork.ForkedTomcatServer$_startSecure_closure1.run(ForkedTomcatServer.groovy) 
| Error  at java.lang.Thread.run(Thread.java:722) 
+0

он не может найти 'myapp.RefreshCustomerMatrixJob' –

+0

В моем рабочем пространстве нет такого файл. Любые другие предложения, пожалуйста. – Sun

+2

Это ошибка, а не предложение. Вы настроили приложение для использования bean-компонента с этим именем класса. –

ответ

4

Я ответил на аналогичный вопрос в How to migrate Grails 2.1 to Grails 2.3 application. В качестве сводной информации сравните Config.groovy & BuildConfig.groovy со стандартными версиями нового приложения Grails 2.3. Убедитесь, что ваша зависимость в BuildConfig.groovy вместо application.properties и Tomcat, Hibernate и Scaffolding плагины правильная версии и иметь правильный объем (сборка для Tomcat плагина, выполнений для Hibernate).

1

я увидел эту строку в журнале ошибок:

Error Exception in thread "Thread-7" 
| Error java.lang.RuntimeException: Forked Grails VM exited with error 

Попробуйте закомментировать раздел grails.project.fork из BuildConfig.groovy

1

Я была такая же ошибка и проблема заключалась в разнице в письмах между именем файла и именем класса в коде. Убедитесь, что имя вашего класса и имя файла совпадают.

Например, я имел мое имя файла, как OAuthCallBackController.groovy и имя класса, как OauthCallBackController (обратите внимание на нижний регистр «а»)

Смежные вопросы