我正在使用最新的 Pax Exam (3.3.0) 进行 OSGi 测试。我已经启动并运行 Pax Exam,部署和启动我的捆绑包等。生活是美好的。
我还有一个实用项目,其中包含我希望能够在多个测试项目中重复使用的各种工厂和其他有用的功能。它是一个 maven 项目,作为 Pax Exam pom.xml 的依赖项包含在内。
但是,一旦我尝试访问实用程序 jar 中包含的任何类,我就会收到 ClassNotFoundException。我一直在玩类加载器,发现我可以通过 URLClassLoader 直接加载类。但是,我仍然抛出了 ClassNotFoundException。
将实用程序项目转换为捆绑包不是一种选择。我将需要在@BeforeClass 注释方法中使用实用程序代码,并且尚未注入 BundleContext 实例。
谁能告诉我在 Pax Exam 中获取我的实用程序项目的最佳/最简单方法?