2012-02-06 96 views
0

我有一个Eclipse RAP产品,我喜欢导出为Tomcat内部使用的Web应用程序。为此,我在Eclipse中使用warproduct导出器,直到现在,它都工作正常。使用OSGi捆绑包导出Eclipse RAP战争与外部捆绑路径

我在编译产品中的一个OSGi包时遇到了问题,因为这是指使用变量替换的一组外部jar。这在下面的片段显示从MANIFEST.MF

Bundle-Name: ... 
Bundle-SymbolicName: ... 
Bundle-ClassPath2: external:/A/test1/jakarta-tomcat/shared/lib/a_base.jar 
Bundle-ClassPath: external:$A_HOME$/jakarta-tomcat/shared/lib/a_base.jar 

如果我使用的第一类路径,而不是和有正确/A/test1/jakarta-tomcat/shared/lib/a_base.jar到位,那么一切都在编译时是好的......我甚至可以手动更改之后用MANIFEST.MF替换为正确的版本。

但是,如果可能的话,我真的很想避免这个额外的步骤!

我认为问题是如何在编译期间传递A_HOME的适当值? (为什么会这样?上面我只展示了一个jar文件,但是我们有更多的jar文件,我们希望在我们早期的Tomcat应用程序和更新的基于RAP的应用程序之间共享。我们知道,还有其他的在这种情况下共享罐子的方式 - 例如通过OSGi框架扩展器或web.xml中的extendedFrameworkExports初始化参数 - 但我们需要选择的方法,因为我们使用EMF,因此无法在Tomcat和Eclipse之间共享EMF元数据...因此,类对象...)

+0

现在报道https://bugs.eclipse.org /bugs/show_bug.cgi?id=372945 – 2012-03-01 08:30:36

回答

2

此功能目前在WAR产品工具中不受支持。我建议打开一个针对Eclipse Libra的bug并定义它们的功能请求。无论如何,我们已经创建了一个例子,如何建立与第谷RAP的应用程序,它是很容易的,也许你想看看:https://github.com/eclipsesource/rap-mobile-demos

干杯霍尔格

+0

完成 - 请参阅https://bugs.eclipse.org/bugs/show_bug.cgi?id=372945 – 2012-03-01 08:31:04