【问题标题】:Adding ojdbc to maven project将jdbc添加到maven项目
【发布时间】:2019-11-29 21:56:13
【问题描述】:

我正在使用 alfresco-amp-archetype 在 Alfresco Content Services 6.1.1 中创建自定义文档库操作。我想访问外部 Oracle 数据库中的数据。

我正在使用来自:https://mvnrepository.com/artifact/com.oracle.jdbc/ojdbc8/12.2.0.1 的 ojdbc 库

由于maven无法自行下载依赖,所以我将jar放到我的项目中并添加到pom中(我也添加到了tomcat/lib目录中):

<dependency>
     <groupId>com.oracle.jdbc</groupId>
     <artifactId>ojdbc</artifactId>
     <version>8</version>
     <scope>system</scope>
     <systemPath>${project.basedir}/src/main/resources/ojdbc8-12.2.0.1.jar</systemPath>
</dependency>

当我调用该操作时,我收到“java.sql.SQLException:找不到适合 jdbc:oracle:thin 的驱动程序”

我应该如何将驱动程序添加到我的项目中才能正常工作?

【问题讨论】:

    标签: java maven tomcat alfresco ojdbc


    【解决方案1】:

    您使用的系统范围更倾向于包含 java 本身提供的东西,并且是一个已弃用的功能。

    由于许可证限制,jar 不在通常的 maven 存储库中。因此,它需要位于具有私人访问权限的地方。

    如果您没有运行像 sonatype nexusjfrog artifactory 这样的 maven 存储库代理,我建议您将 jar 复制到自己的 maven 存储库中:maven deploy into local repository (最好在一个小脚本中重复或分享)。

    不要将它存储在src/main/resources - 那里的所有内容都将添加到您创建的工件中。选择另一个文件夹(例如 src 旁边的“依赖项”),然后将其复制到本地 maven 存储库后,将该 jar 用作正常依赖项(删除范围和 systemPath)。默认范围是编译,因此 jar 将包含在您的类路径中,因此驱动程序应该可用(我假设您创建了某种 war 文件?)。

    因此也无需直接手动将其添加到 tomcat 中 - 而是通过 war 文件引入。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-02-12
      • 1970-01-01
      • 1970-01-01
      • 2012-08-13
      • 1970-01-01
      • 2022-01-24
      • 2013-01-18
      • 2012-10-20
      相关资源
      最近更新 更多