2014-06-19 13 views
5

Kiedy próbuję uruchomić moją aplikację Grails 2.4.1, otrzymuję następujący wyjątek, którego tak naprawdę nie rozumiem.ClassNotFoundException: org.hibernate.event.spi.PreLoadEventListener

| Running Grails application 
objc[15346]: Class JavaLaunchHelper is implemented in both /Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/bin/java and /Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/jre/lib/libinstrument.dylib. One of the two will be used. Which one is undefined. 
| Error 2014-06-19 16:54:40,048 [localhost-startStop-1] ERROR context.GrailsContextLoaderListener - Error initializing the application: org/hibernate/event/spi/PreLoadEventListener 
Message: org/hibernate/event/spi/PreLoadEventListener 
    Line | Method 
->> 800 | defineClass    in java.lang.ClassLoader 
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
| 142 | defineClass    in java.security.SecureClassLoader 
| 449 | defineClass . . . . . . . in java.net.URLClassLoader 
|  71 | access$100    in  '' 
| 361 | run . . . . . . . . . . . in java.net.URLClassLoader$1 
| 355 | run      in  '' 
| 354 | findClass . . . . . . . . in java.net.URLClassLoader 
| 425 | loadClass     in java.lang.ClassLoader 
|  94 | doCall . . . . . . . . . in grails.plugin.hibernate4.HibernatePluginSupport$__clinit__closure1 
| 754 | invokeBeanDefiningClosure in grails.spring.BeanBuilder 
| 584 | beans . . . . . . . . . . in  '' 
| 527 | invokeMethod    in  '' 
| 262 | run . . . . . . . . . . . in java.util.concurrent.FutureTask 
| 1145 | runWorker     in java.util.concurrent.ThreadPoolExecutor 
| 615 | run . . . . . . . . . . . in java.util.concurrent.ThreadPoolExecutor$Worker 
^ 744 | run      in java.lang.Thread 
Caused by ClassNotFoundException: org.hibernate.event.spi.PreLoadEventListener 
->> 366 | run      in java.net.URLClassLoader$1 
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
| 355 | run      in  '' 
| 354 | findClass . . . . . . . . in java.net.URLClassLoader 
| 425 | loadClass     in java.lang.ClassLoader 
| 800 | defineClass . . . . . . . in  '' 
| 142 | defineClass    in java.security.SecureClassLoader 
| 449 | defineClass . . . . . . . in java.net.URLClassLoader 
|  71 | access$100    in  '' 
| 361 | run . . . . . . . . . . . in java.net.URLClassLoader$1 
| 355 | run      in  '' 
| 354 | findClass . . . . . . . . in java.net.URLClassLoader 
| 425 | loadClass     in java.lang.ClassLoader 
|  94 | doCall . . . . . . . . . in grails.plugin.hibernate4.HibernatePluginSupport$__clinit__closure1 
| 754 | invokeBeanDefiningClosure in grails.spring.BeanBuilder 
| 584 | beans . . . . . . . . . . in  '' 
| 527 | invokeMethod    in  '' 
| 262 | run . . . . . . . . . . . in java.util.concurrent.FutureTask 
| 1145 | runWorker     in java.util.concurrent.ThreadPoolExecutor 
| 615 | run . . . . . . . . . . . in java.util.concurrent.ThreadPoolExecutor$Worker 
^ 744 | run      in java.lang.Thread 
| Error Forked Grails VM exited with error 

Zauważ, że nie mam żadnego skomplikowanego kodu w mojej aplikacji tak daleko, zaledwie kilka klas domeny odwrotnej inżynierii z istniejącej bazy danych za pomocą wtyczki DB-reverse engineering.

Odpowiedz

9

Wyobrażam sobie, że błąd pochodzi z wtyczki db-reverse-engineer, która może polegać na klasach z Hibernate 3, podczas gdy Grails 2.4 domyślnie używa Hibernate 4. Spróbuj zmienić wersję wtyczki Hibernate 3 lub usunąć wtyczkę db-reverse-engineer jeśli go już nie potrzebujesz

+0

Tak, to był problem. Odinstalowałem wtyczkę i teraz działa. Wielkie dzięki. – Sebastien