Spring Boot 2.1.1,将postgres config与jpa一起使用

时间:2018-12-27 01:56:31

标签: java spring postgresql spring-boot

我使用jpa / postgres构建了一个简单的spring boot项目。

但是当我调试该项目时,错误提示

  

无法配置数据源:未指定'url'属性,并且无法配置任何嵌入式数据源。

     

原因:无法确定合适的驱动程序类别

但是在我的具有URL的application.properties中。

spring.datasource.url=jdbc:postgresql://localhost:5432/oauth?currentSchema=oauth
spring.datasource.username=SOME_USER_NAME
spring.datasource.password=SOME_PASSWORD
spring.datasource.driverClassName=org.postgresql.Driver
spring.jpa.hibernate.ddl-auto=validate

#hibernate
spring.jpa.database = postgresql
spring.jpa.show-sql = true
spring.jpa.properties.hibernate.jdbc.lob.non_contextual_creation=true

有人知道吗?

如果验证比调试麻烦,请不要说“未指定url属性”。

我的application.properties名称为'application-test.properties',在调试配置中设置为'test',并在日志中写明'profiles test are active”。

属性似乎不匹配,但日志中描述的配置文件匹配。

这让我很困惑。

1 个答案:

答案 0 :(得分:0)

我发现了问题。 Jonathan Johx和TinyOS是正确的,谢谢他们。

如果项目是由Spring Boot 2.1.1,Intellij和postgres组成的,则覆盖build.gradle和pom.xml。

在Spring-boot 2.1.1中(我仍然不知道为什么是默认值)

默认设置为

runtime('org.postgresql:postgresql')

但是如果您想正确运行,则必须像这样编写“ compile”。

compile group: 'org.postgresql', name: 'postgresql', version: '42.2.5'

版本并不重要。只需在Maven Repo中找到所需版本即可。