首次部署后,jhipster heroku无法连接到数据源

时间:2014-10-14 19:55:51

标签: java heroku spring-boot jhipster

使用yo jhipster:heroku成功将jhipster 1.4.0部署到heroku后,我对我的代码进行了更改(无需更改)然后执行:grunt deployHeroku,并推送到heroku master。 但Jhipster使用本地数据源来尝试连接:

2014-10-14T19:38:59.648294+00:00 app[web.1]: Picked up JAVA_TOOL_OPTIONS:  -Djava.rmi.server.useCodebaseOnly=true -Djava.rmi.server.useCodebaseOnly=true
2014-10-14T19:39:02.704297+00:00 app[web.1]: [INFO] es.japanathome.Application - Starting Application on 347e60b4-335d-489e-96c1-036737b62d48 with PID 2 (started by u6297 in /app)
2014-10-14T19:39:02.704442+00:00 app[web.1]: [DEBUG] es.japanathome.Application - Running with Spring Boot v1.1.7.RELEASE, Spring v4.0.7.RELEASE
2014-10-14T19:39:06.306581+00:00 app[web.1]: [DEBUG] org.jboss.logging - Logging Provider: org.jboss.logging.Slf4jLoggerProvider
2014-10-14T19:39:06.553454+00:00 app[web.1]: [DEBUG] es.japanathome.config.AsyncConfiguration - Creating Async Task Executor
2014-10-14T19:39:06.915540+00:00 app[web.1]: [DEBUG] es.japanathome.config.DatabaseConfiguration - Configuring Datasource
2014-10-14T19:39:07.912527+00:00 app[web.1]: [DEBUG] es.japanathome.config.DatabaseConfiguration - Configuring Liquibase
2014-10-14T19:39:38.492503+00:00 app[web.1]:    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228)
2014-10-14T19:39:38.492538+00:00 app[web.1]:    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:298)
2014-10-14T19:39:38.492577+00:00 app[web.1]:    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
2014-10-14T19:39:38.492649+00:00 app[web.1]:    at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:370)
2014-10-14T19:39:38.492726+00:00 app[web.1]:    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1095)
2014-10-14T19:39:38.492763+00:00 app[web.1]:    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:990)
2014-10-14T19:39:38.492804+00:00 app[web.1]:    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:504)
2014-10-14T19:39:38.492861+00:00 app[web.1]:    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:475)
2014-10-14T19:39:38.492894+00:00 app[web.1]:    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:302)
2014-10-14T19:39:38.492935+00:00 app[web.1]:    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228)
2014-10-14T19:39:38.492971+00:00 app[web.1]:    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:298)
2014-10-14T19:39:38.493037+00:00 app[web.1]:    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
2014-10-14T19:39:38.493078+00:00 app[web.1]:    at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:1021)
2014-10-14T19:39:38.493108+00:00 app[web.1]:    at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:916)
2014-10-14T19:39:38.493148+00:00 app[web.1]:    at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:862)
2014-10-14T19:39:38.493186+00:00 app[web.1]:    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:481)
2014-10-14T19:39:38.493211+00:00 app[web.1]:    ... 94 more
2014-10-14T19:39:38.493291+00:00 app[web.1]: Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'liquibase' defined in class path resource [es/japanathome/config/DatabaseConfiguration.class]: Invocation of init method failed; nested exception is liquibase.exception.DatabaseException: java.sql.SQLException: Timeout of 30000ms encountered waiting for connection.

正如您所看到的,它不使用HerokuDatabaseConfiguration而是使用DatabaseConfiguration,因此这就是问题所在。但我不知道为什么,任何想法?

1 个答案:

答案 0 :(得分:2)

解决方案是删除ConditionalOnMissingClass的 DatabaseConfiguration 中的“.class”。

@ConditionalOnMissingClass(name = "my.app.HerokuDatabaseConfiguration.class")更改为@ConditionalOnMissingClass(name = "HerokuDatabaseConfiguration")帮助了我。

我认为 ConditionalOnMissing 只是在查找ClassName并隐含.class后缀。使用已弃用的“值”,可以添加该类。