Java Struts 2是否作为OSGi捆绑包提供?

Java Struts 2是否作为OSGi捆绑包提供?,java,struts,osgi,Java,Struts,Osgi,我有一个由多个OSGi捆绑包组成的服务器应用程序,有些是我的,有些是第三方的。其中一个捆绑包提供了使用Struts的web前端。必要的Struts库位于web前端包中 现在我想添加第二个捆绑包,它提供另一个web前端,具有不同的依赖项和非常不同的用例。我也希望将Struts用于该捆绑包,但我不想将相同的库放入两个捆绑包中 有了OSGi,将Struts LIB单独放在一个包中并从我的两个包中使用应该不会有问题。但是,我找不到这样打包的Struts 快速的谷歌搜索和浏览并没有产生任何效果。我可以为S

我有一个由多个OSGi捆绑包组成的服务器应用程序,有些是我的,有些是第三方的。其中一个捆绑包提供了使用Struts的web前端。必要的Struts库位于web前端包中

现在我想添加第二个捆绑包,它提供另一个web前端,具有不同的依赖项和非常不同的用例。我也希望将Struts用于该捆绑包,但我不想将相同的库放入两个捆绑包中

有了OSGi,将Struts LIB单独放在一个包中并从我的两个包中使用应该不会有问题。但是,我找不到这样打包的Struts


快速的谷歌搜索和浏览并没有产生任何效果。我可以为Struts找到一个插件来在Struts内部运行OSGi容器,但这不是我想要的。

看看当前Struts捆绑包

例如,如果您下载struts2-core-2.1.6.jar,提取它并查看META-INF/MANIFEST.MF,您将看到它确实包含OSGI头(导入包、导出包、捆绑包-*):

C:\TMP\META-INF>more MANIFEST.MF
清单版本:1.0
Archiver版本:丛式Archiver
创建人:1.5.0_10(太阳微系统公司)
建造人:穆萨基
构建Jdk:1.5.010
捆绑许可证:http://www.apache.org/licenses/LICENSE-2.0.txt
导入包:com.opensymphony.xwork2;version=“2.1”,com.opensymphon
Bnd LastModified:1231185746365
导出包:org.apache.struts2.views.xslt;用法:=“javax.servlet.ht
捆绑包版本:2.1.6
捆绑包描述:ApacheStruts2
捆绑包名称:Struts 2 Core
捆绑文档URL:http://www.apache.org
软件包版本:2
捆绑供应商:Apache软件基金会
Bundle SymbolicName:org.apache.struts.struts2-core
工具:Bnd-0.0.255

不知道如何在OSGi应用程序中使用它们-但理论上你至少可以引用它们并做“工作”!!:

实际上,这意味着是的,Struts可以作为OSGi捆绑包提供:)和Spring存储库(www.springsource.com/repository)始终是查找已使用正确的OSGi头包装的公共Java库的好地方。
C:\TMP\META-INF>more MANIFEST.MF
Manifest-Version: 1.0
Archiver-Version: Plexus Archiver
Created-By: 1.5.0_10 (Sun Microsystems Inc.)
Built-By: musachyb
Build-Jdk: 1.5.0_10
Bundle-License: http://www.apache.org/licenses/LICENSE-2.0.txt
Import-Package: com.opensymphony.xwork2;version="2.1",com.opensymphon
 <SNIP>
Bnd-LastModified: 1231185746365
Export-Package: org.apache.struts2.views.xslt;uses:="javax.servlet.ht
Bundle-Version: 2.1.6
 <SNIP>
Bundle-Description: Apache Struts 2
Bundle-Name: Struts 2 Core
Bundle-DocURL: http://www.apache.org
Bundle-ManifestVersion: 2
Bundle-Vendor: Apache Software Foundation
Bundle-SymbolicName: org.apache.struts.struts2-core
Tool: Bnd-0.0.255