【发布时间】:2017-03-13 09:36:51
【问题描述】:
我想在RCP 客户端中使用cglib。 RCP 客户端是使用maven 和tycho plugin 构建的。我们正在使用清单优先策略。
这是我的 MANIFEST.MF:
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: INFO+ RCP Common UI Plug-in
Bundle-SymbolicName: a.company.prj.rcp.common.ui
Bundle-Version: 8.0.14.qualifier
Bundle-Vendor: Schweizerische Bundesbahnen SBB
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Bundle-Activator: a.company.prj.rcp.common.ui.CommonUIPlugin
Bundle-ActivationPolicy: lazy
Export-Package:
a.company.prj.rcp.common.ui,
...
a.company.prj.rcp.common.ui.wizards.page
Import-Package:
org.apache.log4j;version="1.2.17"
Require-Bundle:
org.eclipse.ui;bundle-version="3.7.0",
org.eclipse.ui.forms;bundle-version="3.5.101",
com.ibm.ws.jpa.thinclient;bundle-version="8.0.6",
...
a.company.prj.rcp.core;bundle-version="8.0.14",
...
要添加 cglib,我将 Import-Package 部分更改为:
Import-Package:
net.sf.cglib;version="3.2.0",
org.apache.log4j;version="1.2.17"
现在 Eclipse 抱怨:
No available bundle exports package 'net.sf.cglib'
Ayn 想知道如何在这个环境中包含 cglib?
【问题讨论】:
-
你需要一个 cglib Bundle 来在你的环境中提供这个包。在 Eclipse 中,您通常使用自定义目标平台(.target 文件,例如参见 Tutorial)来执行此操作,您也可以在 Tycho 构建中引用该平台。