2015-11-04 6 views
5

Ich bin neu in Spring Application mit Gradle. mein Projekt Ausführen der Datenbankobjekte auf der Grundlage meiner Klassen erstellt zu erstellen, bekam ich folgende Fehlermeldung:Namen konnte nicht aufgelöst werden [org.hibernate.dialect.MySQL5Dialect] als Strategie [org.hibernate.dialect.Dialect]

Exception in thread "main" org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaAutoConfiguration.class]: Invocation of init method failed; nested exception is org.hibernate.boot.registry.selector.spi.StrategySelectionException: Unable to resolve name [org.hibernate.dialect.MySQL5Dialect ] as strategy [org.hibernate.dialect.Dialect] 
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1572) 
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:539) 
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:476) 
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:303) 
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) 
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:299) 
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194) 
at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:960) 
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:749) 
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:480) 
at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:117) 
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:689) 
at org.springframework.boot.SpringApplication.run(SpringApplication.java:321) 
at org.springframework.boot.SpringApplication.run(SpringApplication.java:969) 
at org.springframework.boot.SpringApplication.run(SpringApplication.java:958) 
at com.krypton.smartImmo.SmartImmoApplication.main(SmartImmoApplication.java:10) 

Caused by: org.hibernate.boot.registry.selector.spi.StrategySelectionException: Unable to resolve name [org.hibernate.dialect.MySQL5Dialect ] as strategy [org.hibernate.dialect.Dialect] 
at org.hibernate.boot.registry.selector.internal.StrategySelectorImpl.selectStrategyImplementor(StrategySelectorImpl.java:128) 
at org.hibernate.boot.registry.selector.internal.StrategySelectorImpl.resolveDefaultableStrategy(StrategySelectorImpl.java:155) 
at org.hibernate.boot.registry.selector.internal.StrategySelectorImpl.resolveStrategy(StrategySelectorImpl.java:136) 
at org.hibernate.engine.jdbc.dialect.internal.DialectFactoryImpl.constructDialect(DialectFactoryImpl.java:78) 
at org.hibernate.engine.jdbc.dialect.internal.DialectFactoryImpl.buildDialect(DialectFactoryImpl.java:68) 
at org.hibernate.engine.jdbc.internal.JdbcServicesImpl.configure(JdbcServicesImpl.java:165) 
at org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.configureService(StandardServiceRegistryImpl.java:111) 

in den application.properties i die folgende Einstellung ahve über Hibernate

spring.jpa.hibernate.naming-strategy = org.hibernate.cfg.ImprovedNamingStrategy 

spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQL5Dialect 
+0

Welche Version von Hibernate sind Sie? –

+0

@GergelyBacso Version 4.3.11.Final – Djama

+0

Ich denke, Sie haben ein Leerzeichen nach "org.hibernate.dialect.MySQL5Dialect" ....? Ich sehe das Leerzeichen im Stacktrace "[org.hibernate.dialect.MySQL5Dialect]" –

Antwort

26

Seit Die Fehlermeldung enthält den verdächtigen zusätzlichen Speicherplatz am Ende:

Unable to resolve name [org.hibernate.dialect.MySQL5Dialect ] 

I wi Ich nehme an, dass Sie am Ende Ihrer Dialekt-Eigenschaft einen zusätzlichen Platz haben.

Also für

"org.hibernate.dialect.MySQL5Dialect " 

suchen und es ändern:

"org.hibernate.dialect.MySQL5Dialect" 
+0

ja du hast Recht wusste nicht, das könnte eine Wurzel eines Fehlers sein :). Glücklich zu lernen, dass – Djama

+0

Die häufigsten Fehler sind in der Regel entweder mit einem Dialekt, der nicht zu diesem spezifischen Hibernate Release noch hinzugefügt wird, oder lustige Tippfehler meist mit Groß-/Kleinbuchstaben Fehler. –

Verwandte Themen