2015-11-04 1 views
5

Я новичок в Spring Application с Gradle. Запуск моего проекта для создания объектов базы данных на основе моих классов, созданных, я получил следующее сообщение об ошибке:Невозможно решить имя [org.hibernate.dialect.MySQL5Dialect] as strategy [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) 

в application.properties я ahve следующих настроек относительно спящего режима

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

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

Какая версия спящего режима вы? –

+0

@GergelyBacso версия 4.3.11.Final – Djama

+0

Я думаю, что вы добавили пробел после «org.hibernate.dialect.MySQL5Dialect» ....? Я вижу пустую строку в стеке "[org.hibernate.dialect.MySQL5Dialect]" –

ответ

26

Так как вы обнаруживаете, что подозрительное дополнительное место в конце содержит:

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

I wi Будем считать, что у вас есть дополнительное пространство в конце вашего свойства диалекта.

Так что смотрите

"org.hibernate.dialect.MySQL5Dialect " 

и изменить его на:

"org.hibernate.dialect.MySQL5Dialect" 
+0

да, вы правы, не знали, что это может быть корень ошибки :). С удовольствием узнаем, что – Djama

+0

Наиболее распространенными ошибками обычно являются либо диалекты, которые еще не добавлены к этому конкретному выпуску спящего режима, либо смешные опечатки, в основном с ошибками письма в верхнем и нижнем регистре. –