使用Ant和Ivy仅保留最新的依赖项快照
我正在使用Ant构建我的项目,并使用Ivy解决它的依赖关系。我的项目有一个将快照发布到我的内部Artifactory服务器的依赖项 如果依赖项发布了一个新快照,而我执行了一个使用Ant和Ivy仅保留最新的依赖项快照,ant,ivy,dependency-management,snapshot,Ant,Ivy,Dependency Management,Snapshot,我正在使用Ant构建我的项目,并使用Ivy解决它的依赖关系。我的项目有一个将快照发布到我的内部Artifactory服务器的依赖项 如果依赖项发布了一个新快照,而我执行了一个,Ivy将获得新快照,但保留以前的快照。因此,在我的lib目录中有两个版本的依赖项 依赖关系快照的名称类似于depproject-1.0.0+23.jar,其中23是构建编号。它发表在一个类似的地址。这不是Maven存储库,它被配置为存储唯一的快照 我是常春藤的新手。这是预期的行为吗?如何配置Ivy或Ant,以便只保留最新的
,Ivy将获得新快照,但保留以前的快照。因此,在我的lib
目录中有两个版本的依赖项
依赖关系快照的名称类似于depproject-1.0.0+23.jar
,其中23
是构建编号。它发表在一个类似的地址。这不是Maven存储库,它被配置为存储唯一的快照
我是常春藤的新手。这是预期的行为吗?如何配置Ivy或Ant,以便只保留最新的依赖项快照
ivysettings.xml
<?xml version="1.0" encoding="UTF-8"?>
<ivy-settings>
<settings defaultResolver="main" />
<resolvers>
<chain name="main">
<ibiblio
name="artifactory-example-snapshots"
m2compatible="false"
root="http://artifactory.example.com/example-snapshots-local/"
pattern="[organization]/[module]/1.0-SNAPSHOT/[artifact]-[revision](-[classifier]).[ext]" />
<!-- more repos listed -->
</chain>
</resolvers>
</ivy-settings>
<ivy-module version="2.0">
<info organisation="com.example" module="myproject" />
<dependencies>
<dependency org="com.example" name="depproject" rev="latest.integration" />
</dependencies>
</ivy-module>
ivy.xml
<?xml version="1.0" encoding="UTF-8"?>
<ivy-settings>
<settings defaultResolver="main" />
<resolvers>
<chain name="main">
<ibiblio
name="artifactory-example-snapshots"
m2compatible="false"
root="http://artifactory.example.com/example-snapshots-local/"
pattern="[organization]/[module]/1.0-SNAPSHOT/[artifact]-[revision](-[classifier]).[ext]" />
<!-- more repos listed -->
</chain>
</resolvers>
</ivy-settings>
<ivy-module version="2.0">
<info organisation="com.example" module="myproject" />
<dependencies>
<dependency org="com.example" name="depproject" rev="latest.integration" />
</dependencies>
</ivy-module>
我假设您正在使用lib目录中的jar创建类路径,类似于:
<path id="compile.path">
<fileset dir="lib" includes="*.jar"/>
</path>
您的问题是多个JAR包含相同的类
我认为你有两个选择: