无法创建 OracleDataSource 的实例 class

Can't create an instance of the OracleDataSource class

我正在开发 Java 应用程序,试图创建 OracleDataSource 的实例。我看到很多帖子说 Oracle 驱动程序不在 Maven Central,但根据 this,它们现在在。所以这是我的 pom.xml:

中的依赖项
<dependency>
  <groupId>com.oracle.database.jdbc</groupId>
  <artifactId>ojdbc8</artifactId>
  <version>19.3.0.0</version>
</dependency>

然后在我的 class 我有:

import oracle.jdbc.driver.*;
import oracle.jdbc.pool.OracleDataSource;

...

public void someMethod() {
    ...
    OracleDataSource ods = new OracleDataSource();
    ...
}

但我收到错误消息,指出软件包和 class 都不存在。

Error: package oracle.jdbc.pool does not exist.

Type 'OracleDataSource' not found

我在这里错过了什么?自从我上次使用 Java 和 Maven 以来已经有一段时间了,所以我认为这很简单。

编辑 IDE (JDeveloper) 和 Maven 似乎不同步。我收到不同的错误 运行 Maven 命令。

我尝试了上面的依赖项和 OracleDataSource 实例化,它在 IntelliJ 和 Java 11.0.12-open 上的命令行(mvn clean package)中编译和 运行,所以我相信你Oracle 驱动程序在 Maven Central 中是正确的。

这可能是一个 IDE 问题 - 我有时发现 IntelliJ 对项目和依赖项的内部视图有点不正常,需要缓存失效或仔细逐步重建任何模块。我不确定 JDeveloper 中的等价物是什么。

但是,通常处理 st运行ge 编译问题的最佳方法是首先将 IDE 排除在外 - 在终端中尝试 mvn clean install。如果失败,可能值得移动您的 ~/.m2/repository 目录(或只是 ~/.m2/repository/com.oracle 目录)并重试,以防先前检索工件的失败已被缓存。如果它仍然失败,那么可能会检查 ~/.m2/settings.xml 以确保它指向 Maven Central,但我希望它能找到该驱动程序。