【问题标题】:Eclipse debug configuration does not load two versions of the same pluginEclipse 调试配置不加载同一个插件的两个版本
【发布时间】:2016-08-10 07:23:39
【问题描述】:

我的 Eclipse RCP 应用程序当前使用相同插件的 2 个版本(javax.servlet 2.5.0javax.servlet 3.1.0)。 当我从我的 Eclipse (Mars 4.5.2) 工作区调试应用程序时,我看到javax.servlet 的最低版本没有加载,也没有显示为可用,正如您在以下控制台 sn-p 中看到的那样(注意 @ 987654327@ 2.5.0 甚至没有出现。javax.servlet.jsp 是一个不同的插件)。

osgi> ss javax.servlet

Framework is launched.

id  State       Bundle
41  INSTALLED   javax.servlet.jsp_2.0.0.v200806031607
8947    ACTIVE      javax.servlet_3.1.0.201605180802

我查看了我的调试配置,并选择了两个版本(2.5.03.1.0)在调试会话期间使用。

但是,当我安装我的应用程序并在不使用 Eclipse 环境的情况下执行它时,OSGI 框架能够毫无问题地加载这两个包,如question 中所述。

我错过了什么?如何通过加载这两个插件从 Eclipse 调试我的应用程序?

【问题讨论】:

    标签: eclipse eclipse-plugin eclipse-rcp


    【解决方案1】:

    OSGi 具有延迟加载功能。让那些在 Debug 配置中进行 INSTALLED,然后 OSGi 将仅在必要时激活它们。

    对于您的 Debug 配置,似乎只使用旧版本就足够了,而在目标环境中,sometginh 也需要激活 3.1.0。

    您的 Debug 配置和目标环境在那里不等价。

    要知道它需要什么,您可以使用-console 标志启动目标环境,并使用常用命令来诊断依赖关系。例如,在 3.1.0 上尝试卸载命令应该会在完成之前向您解释依赖它的内容。

    【讨论】:

    • 感谢您的贡献,但我认为我的问题不够清楚(我已经编辑过)。 javax.servlet 2.5.0 甚至没有出现在 Eclipse 的 OSGI 控制台中。这意味着 Eclipse 甚至不会尝试安装插件(javax.servlet.jsp不是我指的插件)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多