1
7
我宁愿不嵌入依赖的jar(是的,这是可能的)。它导致两个问题, 1)此代码不可重复使用。许多捆绑包可能只是做相同的事情(嵌入同一个jar),最终会安装同一个jar多次。您可以争辩说,您的包也可以为嵌入式JAR导出接口,但这会变得很难看,因为您的包不应该负责公开该代码。它还使公开库的多个版本或同一版本的多个提供程序变得更容易。 2)这是Eclipse特有的——嵌入式JAR在开发环境中无法正确解析(仍在运行时工作)。我的包可能依赖于我的目标平台中的包,它将无法解析嵌入JAR中的元素,必须将它们导入工作区才能工作。 我发现大多数开源的jar已经很友好了 bundled by the nice folks at Spring . 还有其他的回购,但不幸的是,我失去了与它们的链接。 |
2
2
也许你在找类似的东西 Maven ?但是,不确定如何与OSGi一起工作。您可以在这里找到有关Jasper报告的一些信息: http://mvnrepository.com/artifact/jasperreports/jasperreports |
3
2
Eclipse轨道项目还从许多常用的第三方jar中生成了包。 |
4
1
对你提出的问题要具体一些。 每个人都不是自己做的。有关将第三方库的Eclipse打包为包的链接,请参阅我以前的答案。如果你找不到已经打包的版本,你必须自己制作。 最好将二进制依赖项包装在它们自己的包中,而不是将JAR作为二进制包含到代码包中。选择任何你想要的包名称,它的包的导入和导出都很重要。名称间隔捆绑包名称和项目名称将确保不会发生冲突。 要访问包存储区域进行扫描并非不可能,但它往往需要有关如何/在何处提取包的特定于OSGi运行时的信息。所以这是可能的,但并不容易。 |
5
1
Spring已经创建了大多数开源库的OSGi包,我在其中看到了Jasper报告。查看他们的捆绑存储库@ http://www.springsource.com/repository/app/bundle |