org.postgresql中没有org.postgresql.util.PG对象

时间:2019-06-23 18:24:03

标签: postgresql spring-boot

我正在使用Spring Boot 2.1.5.RELEASE,并且在pom.xml中具有以下依赖项

<dependency>
    <groupId>org.postgresql</groupId>
    <artifactId>postgresql</artifactId>
    <scope>runtime</scope>
</dependency>

但是找不到org.postgresql.util.PGobject。在另一个非Spring引导项目中,我具有以下依赖性

<dependency>
    <groupId>org.postgresql</groupId>
    <artifactId>postgresql</artifactId>
    <version>42.2.5</version>
</dependency>

org.postgresql.util.PGobject可以使用。

您知道为什么在Spring Boot项目中找不到org.postgresql.util.PGobject吗?

1 个答案:

答案 0 :(得分:0)

因为您在runtime范围内设置了Postgresql JDBC驱动程序,所以具有以下行为:

  

此范围表示不需要依赖关系   编译,但用于执行。它在运行时进行测试   类路径,而不是编译类路径。

它不在编译类路径中,导致在编译期间找不到其类。您应该将其更改为compile范围,这是默认范围,因此您可以简单地忽略<scope>

 <dependency>
    <groupId>org.postgresql</groupId>
    <artifactId>postgresql</artifactId>
</dependency>