如何将 Ivy 的依赖项添加到 Eclipse PDE 目标平台?

Posted

技术标签:

【中文标题】如何将 Ivy 的依赖项添加到 Eclipse PDE 目标平台?【英文标题】:How to add dependencies from Ivy to the Eclipse PDE Target Platform? 【发布时间】:2013-03-23 20:29:14 【问题描述】:

我可以将外部 OSGi 包添加到我的 PDE 项目中,并且可以让它们显示在目标平台中(尽管我需要在添加新包后执行重新加载),我使用“lib " 每个项目中的目录。

随着我的项目变得越来越复杂,我需要一些 Spring 捆绑包,我希望 Ivy(Ivy DE 插件)为我管理依赖项。这很好地找到了所有需要添加到类路径中的包。

问题是我还需要将它们添加到目标平台,我找不到让目标平台查看 Ivy 依赖项的方法。

一种可能的解决方法是将 Ivy 依赖项复制到我的 lib 目录中。我对 Ivy 很陌生,看不到将依赖项复制到本地目录的方法(这样做似乎违背了 Ivy 的观点)。我还考虑将 Ivy 缓存添加到目标平台(一个疯狂的想法),但由于缓存的目录结构,Eclipse 无法找到所有包。

【问题讨论】:

如何在本地复制这些依赖:***.com/questions/3256273/… 另外,看看 maven 和 tycho 作为 ivy 的替代品:eclipse.org/tycho。 (Ivy 很棒,但根据我的经验,Eclipse 插件开发需要一些更重的东西。) 【参考方案1】:

Ivy 主要设计为嵌入到 ANT 构建中。在这种情况下,您可以使用检索任务来决定在构建工作区中保存文件的位置:

<ivy:retrieve pattern="$dist.dir/WEB-INF/lib/[artifact].[ext]" conf="runtime"/>

我不是 ivy Eclipse 插件以及此功能是否可用于纯 Eclipse 构建的专家。

【讨论】:

@Kevin,我不知道。 PDE 开发非常奇特,您会发现 IvyDE 并不是唯一不了解它的东西。

以上是关于如何将 Ivy 的依赖项添加到 Eclipse PDE 目标平台?的主要内容,如果未能解决你的问题,请参考以下文章

无法从 eclipse 项目构建路径中的 apache ivy 依赖项导入类

在 WAR 文件中排除 Ivy 依赖项

提供的 Ivy 依赖项

从 Ivy.xml 下载依赖项

在旧的 Ant 项目中添加 Ivy

具有 ivy 依赖项的 Eclipse 部署程序集失败