如何解决Heroku FlywayException:无法自动检测URL的JDBC驱动程序
我尝试将我的应用程序部署到Heroku。我可以看到日志有异常,例如:
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'flyway' defined in class path resource [org/springframework/boot/autoconfigure/flyway/FlywayAutoConfiguration$FlywayConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.flywaydb.core.Flyway]: Factory method 'flyway' threw exception; nested exception is org.flywaydb.core.api.FlywayException: Unable to autodetect JDBC driver for url: jdbc:postgres://hostname:5432/databaseName
。
我知道为什么由于网址中的 jdbc:postgres :// ...而有该异常。 Flyway期望这样的URL: jdbc:postgresql :// ....来定义驱动程序。但是Heroku提供的数据库URL不带后缀 ql 。我该如何解决?
解决方法
当我看到heroku提供的网址时,我有点困惑。
postgres://host_name:5432/database_name
但是我只是将其更改为
spring.flyway.url=jdbc:postgresql://${DB_HOST}:5432/${DB_NAME}
在我之前
spring.flyway.url=jdbc:${DATABASE_URL} => postgres://host_name:5432/database_name
现在我只需将 postgres 替换为 postgresql ,现在我的飞行路线就没有问题了。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。