我试图从OSGi容器访问USB设备。我正在使用javax.usb
,其中usb4java是其底层实现。我已经通过修改MANIFEST.MF
文件将所有相关的JAR文件转换为OSGi包。这种方法很有效,可以找到类。
I need to tell javax.usb what implementation is used通过在类路径上指定javax.usb.properties
文件。问题是:每个包的类路径是分开的。如何将属性文件放在javax.usb包的类路径上?
答案 0 :(得分:0)
您可以使用Bundle fragment修改捆绑的类路径:
有时,片段用于“修补”现有的捆绑包:
主机包:
Bundle-SymbolicName: the.host Bundle-ClassPath: patch.jar,.
片段:
Bundle-SymbolicName: the.host.fragment Fragment-Host: the.host
在这种情况下,patch.jar在主机包中不可用 本身,但可能由片段提供。因为它超前于'。' 它将允许从片段中优先加载类 而不是主持人。