从包中排除子目录;在BND文件中包含资源

时间:2010-10-12 13:27:04

标签: gwt osgi

我试图将GWT Eclipse项目放到Bundle-Jar文件中。 为此我必须将war文件夹添加到包中。问题是GWT编译器在war / WEB-INF / classes文件夹中添加所有* .class文件。 BND尝试在jar文件中添加所有* .class文件,但它们在项目中的路径错误。那就是问题所在!因此,我在我的BND文件中寻找正确的Include-Resource:属性。

是否有人知道我可以从Include-Resource表达式中排除特殊文件。

如果我每次删除classes子文件夹,它都有效。但几秒后,GWT SDK将生成此类。

非常感谢

塞巴斯蒂安

1 个答案:

答案 0 :(得分:0)

请检查:http://felix.apache.org/site/apache-felix-maven-bundle-plugin-bnd.html#ApacheFelixMavenBundlePlugin%28BND%29-Instructions

  

<导出-包装及GT; ...可以通过启动来排除使用否定的包   包裹模式带'!'。从而,   非否定模式表明哪个   要包含的可用包   捆绑,而否定模式   表明哪些不应该包括在内   在捆绑中。

您还可以查看此项目:“http://bitbucket.org/MikhailKotelnikov/projecttemplate”。它是一个简单的OSGi / GWT应用程序的模板。 在这里,我像往常一样编译/打包所有依赖GWT的类,但我为BND工具添加了以下说明:

DynamicImport-Package: *
Import-Package: *;resolution:=optional 

在这种情况下,BND认为这些软件包将由OSGi环境在运行时提供,并且它可以正确地完成工作。