加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

如何让Ivy从Nexus repo下载源代码

发布时间:2020-12-14 19:19:15 所属栏目:Java 来源:网络整理
导读:我一直在寻找解决问题的方法,但我遇到的所有其他帖子要么不起作用,要么与我的情况不符,所以希望有人可以给我一些见解. 我有一个我用ant构建的库,它输出2个jar文件,一个正常包含库的编译版本,另一个只包含源文件. 该库上传到我们的Nexus存储库,包装设置为jar.

我一直在寻找解决问题的方法,但我遇到的所有其他帖子要么不起作用,要么与我的情况不符,所以希望有人可以给我一些见解.

我有一个我用ant构建的库,它输出2个jar文件,一个正常包含库的编译版本,另一个只包含源文件.

该库上传到我们的Nexus存储库,包装设置为jar.对于实际的jar文件,我将扩展名设置为jar并将分类器留空.对于源jar,我将分类器设置为jar的源和扩展.

无论我对我的ivy.xml文件做什么,我都无法下载源jar.基于我在其他地方读过的帖子,我尝试添加:

conf="*->default,sources"

我的依赖,但后来我得到一个错误:

configuration not found in org#name;version: 'sources'

所以这基本上是期望我的库将源定义为某个配置?我认为它只会发现存在另一个人工制品,其中分类器设置为存储库中的源.

任何人都可以通过我将我的库发布到Nexus的方式,或者我在Ivy文件中如何设置我的依赖声明,向我提出我可能做错的其他建议.

这是基本的Ivy.xml文件,我在这里定义了我对Nexus中放置的库的依赖.

在回复下面的评论时,我的build.properties中的ivy.configuration属性设置为pda.对于Eclipse,我创建了一个属性文件,并将ivy.configuration设置为pda(然后在Eclipse中的Ivy设置中引用此属性文件).

我得到的错误信息是:

Some projects fail to be resolved
    Impossible to resolve dependencies of ${ivy.organisation}#moduleName;working@host
        unresolved dependency: my.org#myLib;0.0.+: configuration not found in my.org#myLib;0.0.0: 'sources'. It was required from ${ivy.organisation}#moduleName;working@host pda

UPDATE
这是解析的ivy.xml文件:


这显然解释了为什么它找不到“来源”的内容.但我的印象是应该自动添加来源conf,因为我已将消息来源添加到Nexus.

最佳答案
在发布工件时,您应该告诉Ivy有关配置的信息.例如:


如您所见,commons-lang.jar以二进制配置发布.但是commons-lang-sources和commons-lang-javadoc在开发配置下发布.

检索依赖项时,应使用以下ivy.xml:


并在使用Ant解析时提供所需的配置:

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读