我正在开发使用本机库librxtxSerial的OSGI包。
第一次,我必须将此捆绑软件部署在树莓上,所以我做了类似的事情:
我将本机库放在以下目录中:lib / librxtxSerial.so(注意:在Java项目中)。
然后,在清单中,我写道:
Bundle-NativeCode: lib/librxtxSerial.so
一切正常!
现在,问题是我必须在使用不同处理器体系结构(x86而不是ARM)的其他嵌入式设备上部署相同的捆绑软件。
因此,我已经下载了用于librxtxSerial库的x86构建,并以如下方式修改了文件夹结构:
- lib
- x86
- librxtxSerial.so
- arm
- librxtxSerial.so
而且我以这种方式修改了清单:
Bundle-NativeCode: lib/x86/librxtxSerial;processor=x86, lib/arm/librxtxSerial;processor=ARM_le
尝试编译(通过Maven tycho插件)时,我总是遇到相同的错误:
No match found for native code: lib/x86/librxtxSerial; processor=x86, lib/arm/librxtxSerial; processor=ARM_le
我该如何解决?
最佳答案
好,我解决了。不知道为什么,但是为了解决此问题,足以在标头的末尾添加“ *”,因此:
Bundle-NativeCode: lib/x86/librxtxSerial;processor=x86, lib/arm/librxtxSerial;processor=ARM_le, *
现在可以使用了。