首页 文章

解决IVY ANT的Oracle JDBC依赖关系

提问于
浏览
2

我正试图从Maven存储库转移到IVY存储库 .

我设置存储库的方式如下:

<filesystem name="local" checkmodified="true">
     <ivy pattern="${ivy.local.default.root}/${ivy.local.default.ivy.pattern}"  />
     <artifact pattern="${ivy.local.default.root}/${ivy.local.default.artifact.pattern}"/>
</filesystem>

我在本地存储库中获取oracle jar时遇到问题:

我的maven脚本如下:

<dependency>
      <groupId>oracle.jdbc</groupId>
      <artifactId>ojdbc11g</artifactId>
      <version>${oracle-jdbc-version}</version>
</dependency>

我将尝试在ivy.xml中显示为:

<ivy:install settingsRef="basic.settings" organisation="oracle.jdbc" module="ojdbc11g" revision="[1.0,)" overwrite="TRUE" from="${from.resolver}" to="${to.resolver}"   />

不幸的是,我收到了这个错误:

[ivy:install]
[ivy:install] :: problems summary ::
[ivy:install] :::: WARNINGS
[ivy:install]           module not found: oracle.jdbc#ojdbc11g;[1.0,)
[ivy:install]   ==== libraries: tried
[ivy:install]     http://repo1.maven.org/maven2/oracle/jdbc/ojdbc11g/[revision]/ojdbc11g-[revision].pom
[ivy:install]     -- artifact o`enter code here`racle.jdbc#ojdbc11g;[1.0,)!ojdbc11g.jar:
[ivy:install]     http://repo1.maven.org/maven2/oracle/jdbc/ojdbc11g/[revision]/ojdbc11g-[revision].jar
[ivy:install]           ::::::::::::::::::::::::::::::::::::::::::::::
[ivy:install]           ::          UNRESOLVED DEPENDENCIES         ::
[ivy:install]           ::::::::::::::::::::::::::::::::::::::::::::::
[ivy:install]           :: oracle.jdbc#ojdbc11g;[1.0,): not found
[ivy:install]           ::::::::::::::::::::::::::::::::::::::::::::::
[ivy:install]
[ivy:install] :: USE VERBOSE OR DEBUG MESSAGE LEVEL FOR MORE DETAILS

BUILD FAILED /root/tools/apache-ivy-2.2.0/src/example/build-a-ivy-repository/build.xml:199:安装模块时出现问题 - 有关详细信息,请参阅输出

我该如何解决这个问题?

提前致谢 .

2 回答

  • 2

    公共Maven存储库中不提供Oracle JDBC驱动程序 . 您必须从Oracle下载它们并以其他方式将它们包含在您的项目中 - 可能使用与用户或公司存储库等效的常 Spring 藤 . 这SO question可能会有所帮助 .

  • 2

    我建议运行一个Maven存储库管理器,而不是尝试创建自己的常 Spring 藤存储库 .

    Ivy与Maven存储库完全兼容 . 只需声明ibiblio resolver如下:

    <ivysettings>
        <settings defaultResolver="myrepo"/>
        <resolvers>
            <ibiblio name="myrepo" m2compatible="true" root="http://myhost/....."/>
        </resolvers>
    </ivysettings>
    

    此类软件的示例如下:

    • Nexus

    • Artifactory

    • Apache Achiva

    Maven存储库管理器可以充当第三方软件存储库(如Maven Central)的智能缓存 . 他们还将提供用于上传具有限制性许可证的jar的工具,例如Oracle JDBC驱动程序 .

相关问题