【问题标题】:IvyDE + WTP: How to workaround that ivy library is ignored by WTP?IvyDE + WTP:如何解决 ivy 库被 WTP 忽略的问题?
【发布时间】:2011-02-26 16:52:00
【问题描述】:

我发现 IvyDE 让我能够解决一个悬而未决的问题,即 Web 应用程序的核心版本冻结,它需要能够从更新库中提取额外的代码,以便它位于 Web 应用程序的类路径中.为了提高开发速度,我发现“Resolve in Workspace”工具允许 Eclipse 将更新库项目的文件夹直接放在冻结的核心 Web 应用程序的构建路径上。适用于普通 Java 应用程序。

然而,对于 Web 应用程序,WTP(Eclipse Java EE 模块)似乎在类路径上部署由 ivy 库表示的文件夹。这是非常不方便的。 IvyDE 开发人员认为这是 WTP 的一个缺点,不会修复它。我不能完全理解 WTP 的人对此的看法(除了它显然很复杂),除非他们还不会修复它。

所以问题是:

是否有一种合理的方式与 IvyDE 合作,让我能够使用解冻的更新库项目来维护一个冻结的 web 应用程序,最好使用 Resolve in Workspace 工具?

我们目前使用 GlassFish 3.0.1 作为 Web 容器。


编辑:JIRA 问题是https://issues.apache.org/jira/browse/IVYDE-227


编辑:经过一些实验,我们发现 Maven 非常适合我们,并且已经切换到它。原因之一是现代 Eclipse 中的 Maven 工具具有更好的 WTP 支持,并且可以很好地映射到我们的工作流程。

【问题讨论】:

    标签: java eclipse ivy eclipse-wtp ivyde


    【解决方案1】:

    对于这类事情,我们只需在 Eclipse 项目中添加一个基于 Ant 的 Builder,监控依赖文件,它只是直接更新 WEB-INF/lib 并调用工作空间刷新。这样我们就不会被绑定到特定的插件,而且它在构建服务器上也能很好地工作,无需任何更改。

    【讨论】:

      【解决方案2】:

      您是否尝试将 ivy.xml 模块添加到项目的 Java EE 模块依赖项中?


      (来源:espenberntsen.net

      【讨论】:

      • 是的,我相信我已完全按照说明进行操作。更新了对 JIRA 问题的引用。
      【解决方案3】:

      我认为这回答了你的问题:How to use Ivy + IvyDE in eclipse to put different jars in lib and web-inf/lib

      它建议您使用 Project->Properties->Ivy 配置 GUI 将检索依赖规则添加到您的项目。然后您可以 Project->Ivy->Retrieve... 将所有 ivy jar 复制到您的 Web 项目的 WEB-INF/lib 文件夹(或您希望复制它们的任何位置)。

      【讨论】:

        猜你喜欢
        • 2012-03-05
        • 2013-03-23
        • 2022-06-15
        • 1970-01-01
        • 2011-11-13
        • 1970-01-01
        • 2011-10-30
        • 2010-12-21
        • 2011-01-25
        相关资源
        最近更新 更多