我在Linux服务器上加载OpenCV库时遇到问题。我正在尝试将带有 Java 组件的应用程序部署到此环境。我首先在Windows上使用Ubuntu安装了OpenCV,然后将OpenCV .so文件复制到Java类路径的文件夹中,以便可以找到它们。.so 文件的结构如下所示:
.so 文件的结构
如果我然后尝试使用System.loadLibrary(NATIVE_LIBRARY_NAME);
加载库,它会给出以下错误:
CRITICAL - M2EE: java.lang.UnsatisfiedLinkError:
/home/vcap/app/data/tmp/project-userlib___415031196935836591/libopencv_java342.so:
/home/vcap/app/model/resources/libopencv_ml.so.3.4: file too short
我认为这与将链接的 .so 文件复制到 Windows 然后将它们部署回 Linux 有关,因此库的链接不知何故丢失了,但我不知道如何以正确的方式执行此操作。
希望有人能帮助我。
问候
病房
不幸的是,您将无法通过IBM Bluemix 服务器安装依赖项/库。
但是,您可以使用IBM Bluemix服务器上提供的Java 运行时来创建开发环境,然后安装OpenCV或任何其他依赖项/库。
这样,您也可以在应用程序中使用它。
注意: 如果您需要任何帮助,可以询问我,也可以联系IBM Bluemix 支持团队,他们将很乐意在这方面为您提供帮助和指导。