我知道 PAX 正在做很多事情,并且创建容器和复制所有这些 jar 并不便宜,但是是否有任何提高性能的一般技巧。我的测试在容器外部执行只需不到一秒,而在容器内部则需要更长的时间。我使用 PAX 主要是为了验证我的 list 是否准确,并且该 bundle 可以在不丢失任何依赖项的情况下进行部署。我尝试过 Knopflerfish、Equinox、Felix,总体来说没有什么区别,它们对于准系统无容器运行来说相对较慢。
最佳答案
正如您所意识到的,底层容器并没有太大区别。
如果您想动态创建最少的 bundle ,您可以尝试 Pax Tinybundles :如果这适用于您的情况,您可以构建一组最小化的 bundle ,仅包含测试实际需要的内容。例如,您可以只打包您的 Manifest。我自己还没有为此特定目的对其进行基准测试,但值得一试。
作为旁注,请考虑 Pax Exam 2.3 引入了对 @Before 和 @After 的支持(请参阅 here ),从而为您提供更灵活的加载设置/拆卸。
关于java - 使 PAX(OSGI 测试)框架更快的技巧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7199637/