我有一个Maven 2项目,现在需要声明对保存在Ivy存储库中的人工制品的依赖。
这是可能的,如果是这样的话怎么样?
答案 0 :(得分:0)
Maven是一个相当自以为是的框架,因此只支持Maven存储库。
您对常春藤存储库有任何控制权吗?最好的解决方案是将其内容迁移到像Nexus这样的Maven存储库管理器(Artifactory,Apache Archiva是其他选项)。
拥有存储库管理器有很多好处:
答案 1 :(得分:0)
试试Ivy Maven插件:
https://github.com/remis-thoughts/ivy-maven-plugin
“一个将apache Ivy依赖项添加到Maven项目的插件。这是Evgeny Goldin的Ivy Maven插件的一个分支,它修复了对传递依赖的支持。”
(请注意,下面的早期评论是指Evgeny Goldin的Ivy Maven插件 - 看起来这个叉子修复了我遇到的问题。)
答案 2 :(得分:0)
我最终将此项目迁移到Gradle。默认情况下,Gradle使用与Maven相同的项目布局,因此迁移非常简单。
Gradle允许您declare dependencies across many types of repositories:
所以你可以在Maven仓库中拥有一些依赖关系,其他人在一个常春藤仓库和项目lib目录中的其他人(震惊,恐怖!)。
强烈推荐。