升级后Eclipse OSGI导入包问题

问题描述 投票:0回答:1

我正在升级 Eclipse RCP 插件。我们导入的许多插件(例如

org.eclipse.ui.workbench
org.eclipse.jface.text
都有
"Import-Package: com.ibm.icu.text"
"Import-Package: com.ibm.icu.util"

由于种种原因,我们只能将Eclipse版本升级到4.16,但是出于安全考虑,我们尝试升级

com.ibm.icu
插件。我通过 Orbit 将其从版本 64.2 升级到 67.1,因为这是具有安全修复程序的最旧版本。

但是,一旦我升级了它,我的插件就不再构建了。我收到以下错误:

org.osgi.framework.BundleException: Could not resolve module: org.eclipse.ant.ui [32]
  Unresolved requirement: Require-Bundle: org.eclipse.ui.ide; bundle-version="[3.2.0,4.0.0)"; resolution:="optional"
    -> Bundle-SymbolicName: org.eclipse.ui.ide; bundle-version="3.17.100.v20200530-0835"; singleton:="true"
       org.eclipse.ui.ide [238]
         Unresolved requirement: Require-Bundle: org.eclipse.ui; bundle-version="[3.106.0,4.0.0)"
           -> Bundle-SymbolicName: org.eclipse.ui; bundle-version="3.117.0.v20200518-1705"; singleton:="true"
              org.eclipse.ui [230]
                Unresolved requirement: Require-Bundle: org.eclipse.ui.workbench; bundle-version="[3.119.0,4.0.0)"; visibility:="reexport"
                  -> Bundle-SymbolicName: org.eclipse.ui.workbench; bundle-version="3.119.0.v20200521-1247"; singleton:="true"
                     org.eclipse.ui.workbench [253]
                       Unresolved requirement: Import-Package: com.ibm.icu.util
         Unresolved requirement: Require-Bundle: org.eclipse.ui.workbench; bundle-version="[3.115.100,4.0.0)"
           -> Bundle-SymbolicName: org.eclipse.ui.workbench; bundle-version="3.119.0.v20200521-1247"; singleton:="true"

似乎缺少的 2 个软件包是

com.ibm.icu.text
com.ibm.icu.util
。新版本的清单显示它仍在导出这些包。我不知道为什么它不再找到包裹。我几天来一直试图解决这个问题,但运气为零。预先感谢您的帮助!

osgi eclipse-rcp osgi-bundle
1个回答
0
投票

那个

org.eclipse.ui.workbench
捆绑包的清单提到了
com.ibm.icu.util
包导入的版本号。未版本化的包导出将不匹配。您不是第一个遇到此问题的人,但这并不是您可以在其他人的捆绑包中修复的问题。

© www.soinside.com 2019 - 2024. All rights reserved.