Java 将ojdbc添加到maven项目
我正在Alfresco Content Services 6.1.1中使用Alfresco amp原型创建自定义文档库操作。我想访问外部Oracle数据库中的数据 我使用的ojdbc库来自: 由于maven无法自行下载依赖项,因此我将jar放在我的项目中,并将其添加到pom中(我还将其添加到tomcat/lib目录中):Java 将ojdbc添加到maven项目,java,maven,tomcat,alfresco,ojdbc,Java,Maven,Tomcat,Alfresco,Ojdbc,我正在Alfresco Content Services 6.1.1中使用Alfresco amp原型创建自定义文档库操作。我想访问外部Oracle数据库中的数据 我使用的ojdbc库来自: 由于maven无法自行下载依赖项,因此我将jar放在我的项目中,并将其添加到pom中(我还将其添加到tomcat/lib目录中): com.oracle.jdbc ojdbc 8. 系统 ${project.basedir}/src/main/resources/ojdbc8-12.2.0.1.jar
com.oracle.jdbc
ojdbc
8.
系统
${project.basedir}/src/main/resources/ojdbc8-12.2.0.1.jar
当我调用该操作时,我得到了“java.sql.SQLException:没有为jdbc找到合适的驱动程序:oracle:thin”
我应该如何将驱动程序添加到我的项目中以使其正常工作?您正在使用的系统范围更多的是包含java本身提供的内容,并且是一个不推荐使用的功能 由于许可证限制,jar不在通常的maven存储库中。所以它需要在有私人访问的地方 如果您没有运行像sonatype nexus或jfrog artifactory这样的maven存储库代理,我建议您将jar复制到您自己的maven存储库中: (最好用一个小脚本来重复或共享) 不要将其存储在
src/main/resources
中-其中的所有内容都将添加到您创建的工件中。选择另一个文件夹(如src旁边的“dependencies”),然后在复制到本地maven存储库后,将该jar用作普通依赖项(删除范围和系统路径)。默认范围是compile,因此jar将包含在类路径中,这样驱动程序就可以使用了(我假设您创建了某种war文件?)
因此,也不需要直接手动将其添加到tomcat中,而是通过war文件将其引入
<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>