我似乎无法让 Maven 将 ojdbc6.jar 文件捆绑到我项目的 war 文件中。当直接为 Hibernate 工具指定依赖项时,我让它在 POM 文件中工作。但它不会与项目的 war 文件捆绑在一起,因此我的项目不会在 Tomcat 上运行。
我已经尝试了我可以在网上找到的所有解决方案,包括这里为这个问题指定的解决方案:
Find Oracle JDBC driver in Maven repository
最近,我做了以下事情:
将 jar 文件下载到我的机器运行以下命令将 jar 安装到我的本地存储库中: mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc6 -Dversion=11.2.0.3 -Dpackaging=jar -Dfile=ojdbc6 .jar -DgeneratePom=true (我也尝试过该命令的各种变体。)最后,我将依赖项放入我的 pom 文件中:
为什么这不起作用?我准备把昂贵的电脑零件扔到房间的另一头。这已经浪费了很多时间。 (谢谢你,甲骨文。我们又付了你多少钱?)
可能是因为我在Mac上吗?
ojdbc6-11.2.0.3.jar
是否在您的本地存储库中的正确文件夹中可用?
mvn install:install-file
没有工作。您应该提供 ojdbc6.jar
的绝对位置或从包含它的文件夹中运行命令。文件名没有问题。您可以使用 -X
标志运行,以便调试信息。
install-file
时是否有任何输出? Maven 应该告诉你它将文件安装到哪里或者是否有任何错误。
最好将新的 Maven 存储库(最好使用您自己的工件)添加到您的项目中,而不是将其安装到本地存储库中。
Maven语法:
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc6</artifactId>
<version>11.2.0.3</version>
</dependency>
...
<repositories>
<repository>
<id>codelds</id>
<url>https://code.lds.org/nexus/content/groups/main-repo</url>
</repository>
</repositories>
Grails 示例:
mavenRepo "https://code.lds.org/nexus/content/groups/main-repo"
build 'com.oracle:ojdbc6:11.2.0.3'
对于将来阅读这篇文章的任何人,您不需要 cd 到 jar 所在的目录。这是你需要做的 -
转到您可以运行 maven 命令的项目文件夹(当您在此文件夹中执行 ls -ltr 时,您应该会看到 pom.xml)
做这个 -
mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc6 -Dversion=11.2.0.3 -Dpackaging=jar -Dfile=<Path where the jar is, example downloads>/ojdbc6.jar -DgeneratePom=true
完成此操作后,您可以在 pom.xml 中添加依赖项,如下所示 -
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc6</artifactId>
<version>11.2.0.3</version>
</dependency>
Maven > Update Project
之前,我在 eclipse 中仍然遇到相同的错误。然后一切都很顺利。这一步可能很明显,但我想我会添加它。
Raghuram 在我原来的问题的评论部分提供了正确的答案。
无论出于何种原因,将“mvn install”指向物理 ojdbc6.jar 文件的完整路径对我来说不起作用。 (或者我在运行命令时一直反复弄乱它,但没有发出错误。)
cd-ing 进入我保存 ojdb6.jar 的目录并从那里运行命令第一次工作。
如果 Raghuram 想回答这个问题,我会接受他的回答。感谢大家!
mvn install:install-file
-Dfile=C:\Users\xxxx\Downloads\lib\ojdbc6.jar
-DgroupId=com.oracle
-DartifactId=ojdbc6 -Dversion=11.2.0 -Dpackaging=jar
解决 Spring 应用程序的 ORACLE JAR 问题,
Oracle JDBC ojdbc6 Jar 作为 Maven 依赖项
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc6</artifactId>
<version>11.2.0</version>
</dependency>`
首先,您需要从 Oracle 站点下载特定的 jar(ojdbc.jar 版本 11.2.0.3)
如果您将其下载到 C:\filefolder
在 cmd 提示符下转到该目录并提供以下命令。它将安装依赖项。然后您可以构建您的项目。
mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc6 -Dpackaging=jar -Dversion=11.2.0.4.0 -Dfile=ojdbc6.jar -DgeneratePom=true
执行后
mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc6 -Dversion=11.2.0.3 -Dpackaging=jar -Dfile=ojdbc6.jar -DgeneratePom=true
检查您的 .m2 存储库文件夹 (/com/oracle/ojdbc6/11.2.0.3) 以查看 ojdbc6.jar 是否存在。如果不检查 $M2_HOME/conf/settings.xml 下的 Maven 存储库设置
下面的配置对我有用。有关详细信息,请参阅此 link。
<dependency>
<groupId>com.oracle.jdbc</groupId>
<artifactId>ojdbc7</artifactId>
<version>12.1.0.2</version>
</dependency>
由于 Oracle 是许可产品,因此直接添加 maven 依赖项存在问题。要添加任何版本的 ojdbc.jar,可以执行以下 2 个步骤。
运行以下命令将 ojdbc.jar 安装到本地 maven 存储库中。
/opt/apache-maven/bin/mvn install:install-file
-Dfile=<path-to-file>/ojdbc7.jar
-DgroupId=com.oracle
-DartifactId=ojdbc7
-Dversion=12.1.0.1.0
-Dpackaging=jar
这会将依赖项添加到本地存储库中。
现在,在 pom 文件中添加依赖项
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc7</artifactId>
<version>12.1.0.1.0</version>
</dependency>
我试过使用没有版本标签的依赖项,它对我来说很好用。
<dependency>
<groupId>com.oracle.ojdbc</groupId>
<artifactId>ojdbc8</artifactId>
</dependency>
我按照以下命令工作:
mvn install:install-file -Dfile=E:\JAVA\Spring\ojdbc14-10.2.0.4.0.jar\ojdbc14-10.2.0.4.0.jar -DgroupId=com.oracle -DartifactId=ojdbc14 -Dversion=10.2.0.4.0 -Dpackaging=jar
安装后检查 jar 是否正确安装在 M2_repo 上。
在 pom.xml 中添加以下依赖项
<dependency>
<groupId>com.oracle</groupId>
<artifactId>oracle</artifactId>
<version>10.2.0.2.0</version>
</dependency>
转到C盘->用户-> PcName->找到.m2并将下载的ojdbc jar文件粘贴到那里,服务器会自动选择这个。
公开:https://mvnrepository.com/artifact/com.oracle.database.jdbc/ojdbc6/11.2.0.4
<dependency>
<groupId>com.oracle.database.jdbc</groupId>
<artifactId>ojdbc6</artifactId>
<version>11.2.0.4</version>
</dependency>
对于 Ubuntu 问题
在 ubuntu .m2\ 文件夹中很难找到并且很难将 jar 放入存储库,因此当我们将步骤 1 的命令放入命令提示符时,它会在本地存储库中创建 ojdbc7 jar。
第 1 步:转到 /home/user/Documents 之类的任何位置打开终端并输入此命令 命令
mvn install:install-file -Dfile=path_of_downloaded_jar/ojdbc7.jar -DgroupId=com.oracle -DartifactId=ojdbc7 -Dversion=12.1.0.2.0 -Dpackaging=jar -X
第二步:把这个依赖放到 pom.xml 依赖
<dependency>
<groupId>com.oracle.jdbc</groupId>
<artifactId>ojdbc7</artifactId>
<version>12.1.0.2.0</version>
</dependency>
第 3 步:更新 Maven。
请注意:
您可以根据需要更改 ojdbc 的版本,例如 ojdbc6/7/8。
Central Maven 上提供了 Oracle JDBC 驱动程序和其他配套 Jar。我们建议使用官方支持的 Oracle JDBC 版本 11.2.0.4、12.2.0.2、18.3.0.0、19.3.0.0、19.6.0.0 和 19.7.0.0。这些在 Central Maven Repository 上可用。有关详细信息,请参阅 Maven Central Guide。
建议使用最新版本。查看 FAQ 了解 JDK 兼容性。