我正在开发使用本机库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, *


现在可以使用了。

10-06 02:01