【发布时间】:2015-07-12 01:32:30
【问题描述】:
我正在尝试将 Oracle JDBC 作为 maven 依赖项添加到我的项目中。我已经在线关注了多个教程,这些教程建议了添加第三方依赖项的各种方法。
我选择了本地安装方法,但像 (this person) 我遇到了问题。
我运行以下命令来安装 jar:
mvn install:install-file -Dfile={lib/ojdbc7.jar} -DgroupId=com.oracle -DartifactId=ojdbc7 -Dversion=12.1.0.1 -Dpackaging=jar
它成功了:
[INFO] --- maven-install-plugin:2.3:install-file (default-cli) @ standalone-pom ---
[INFO] Installing /home/<myfolder>/{lib/ojdbc7.jar} to /home/<myname>/.m2/repository/com/oracle/ojdbc7/12.1.0.1/ojdbc7-12.1.0.1.jar
然后我在我的 pom 中添加了以下内容:
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc7</artifactId>
<version>12.1.0.1</version>
</dependency>
但当我编译时,我得到以下信息:
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.307s
[INFO] Finished at: Sat May 02 20:40:07 NZST 2015
[INFO] Final Memory: 8M/56M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal on project xxx: Could not resolve dependencies for project com.xxx:xxx:jar:1.0-SNAPSHOT: Failure to find com.oracle:ojdbc7:jar:12.1.0.1 in http://repo.maven.apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/DependencyResolutionException
我玩过-U 和-o 标志,但无济于事。我还尝试通过首先进入 lib 目录来安装 jar(如 Raghuram 在另一个问题上所建议的那样),没有任何变化。
【问题讨论】:
-
执行安装命令时,jar 是否被复制到本地 M2 存储库
-
密码:
/home/xxx/.m2/repository/com/oracle/ojdbc7/12.1.0.1ls:_maven.repositories ojdbc7-12.1.0.1.jar.lastUpdated ojdbc7-12.1.0.1.pom -
要查看和尝试的两件事:首先,确保安装文件的存储库和用于构建项目的存储库相同。错误显示 maven 将远程存储库以搜索文件,这意味着它不会在本地获取它。第二:先运行mvn clean【希望你用的是命令行mvn】,然后构建项目。
-
如果想在 Artifactory 中添加这个 jar:在 libs-release-local > Deploy > 选择 ojdbc.jar 文件(groupId=com.oracle, artifactId=ojdbc7, version=12.1.0.1 ),然后从本地计算机运行
mvn clean package -U(或类似命令)。 -
删除您的 /home/xxx/.m2/repository/com/oracle/ojdbc7/12.1.0.1 文件夹并重新运行“mvn install:install-file”命令。在重新运行编译命令之前检查本地磁盘并确保 jar 在那里。