首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ivy -使用Ivy指定编译/运行时类路径

Ivy -使用Ivy指定编译/运行时类路径
EN

Stack Overflow用户
提问于 2013-04-25 03:40:09
回答 1查看 2.9K关注 0票数 1

我有一个项目,它有两个不同的jars,每个jars都包含一些相同的类。我需要的是让它在Jar "B“之前使用Jar "A”中的类。在普通的Java编译中(以及使用Ant),我可以指定类路径本身的顺序。这样,我可以保证Jar "A“中的类将在Jar "B”中的类之前使用。

在常春藤有办法做到这一点吗?

我能想到的唯一方法就是在我的ivy.xml中创建两个独立的配置

代码语言:javascript
复制
<dependency org="com.vegibank" name="a.jar"
    rev="1.0" conf="foo->default"/>

<dependency org="com.vegibank" name="b.jar"
    rev="1.0" conf="compile->default"/>

然后创建两个单独的路径类引用:

代码语言:javascript
复制
<ivy:cachepath pathid="compile.foo.classpath"
    conf="foo"/>
<ivy:cachepath pathid="compile.normal.classpath"
    conf="compile"/>

然后在<javac/>中,我可以指定路径:

代码语言:javascript
复制
<javac ...>
    <classpath refid="compile.foo.classpath"/>
    <classpath refid="compile.normal.classpath"/>
</javac>

然而,我假设一定有一种方法来保证在Ivy解析时jars被加载到类路径中的方式。

有没有办法做到这一点?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-04-27 22:02:14

每个Ivy Ant任务甚至IvyDE都遵循ivy.xml文件中依赖项声明的顺序。因此,如果在ivy.xml中,您在b.jar之前声明了对a.jar的依赖,则生成的类路径将首先使用a.jar,然后使用b.jar。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16200763

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档