我正在开发一个使用 ivy 来管理依赖项的现有应用程序,并且源代码附带ivy.xml
和ivysettings.xml
文件。我正在尝试将我自己的 jar 添加到构建中。最简单的方法是什么?
我尝试向 ivy.xml 添加依赖项,但不确定如何配置存储库目录。也许有简单的方法可以做到这一点?任何快速而肮脏的方式都可以。
假设您可以修改刚刚继承的文件系统解析器和链式解析器,应该可以帮助您。ivysettings.xml
您可以在本地常春藤缓存或共享常春藤缓存下将您的 jar 本地存储在您的机器上。我相信它$HOME/.ivy2/local
和目录$HOME/.ivy2/shared
的格式相同$HOME/.ivy2/cache
。如果您使用<ivy:publish/>
Ant 任务将本地 jar 推送到本地存储库,那么您的所有项目都可以访问它们。
但是,我建议硬着头皮做事……技术术语是什么?哦,是 的...正确的方法。
继续并设置一个项目范围的 Ivy/Maven 存储库,您可以在其中获取本地 jars,就像获取第三方 jars 一样。这样,您的本地 jar 和您正在使用的第三方 jar 之间没有区别。没有人需要考虑特定 Jar 的位置或调整他们的 Ivy 配置来获得一个或另一个 jar。
下载Nexus或Artifactory。您可以设置这些存储库,以便所有第三方 jar 和您的本地 jar 都可用,就好像它们都存储在同一服务器中一样。您甚至可以添加其他不在中心位置的 jar 存储库。
我推荐 Loughran 的书Ant in Action。它有一个关于使用 Ivy 的优秀章节。您还可以查看我的ivy.dir以了解我如何配置 Ivy,因此我们所有的项目都可以轻松访问它。