java - 在Linux服务器上加载OpenCV库时出现问题: file too short

标签 java opencv ibm-cloud

我在 Linux 服务器上加载 OpenCV 库时遇到问题。我正在尝试将带有 Java 组件的应用程序部署到此环境。我首先在 Windows 上使用 Ubuntu 安装 OpenCV,然后将 OpenCV .so 文件复制到 Java 类路径的文件夹中,以便可以找到它们。 .so 文件的结构如下所示:

structure of .so files

如果我随后尝试使用 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 支持团队,他们将很乐意在这方面为您提供帮助和指导。

关于java - 在Linux服务器上加载OpenCV库时出现问题: file too short,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52204620/

相关文章:

python - 在OpenCV图像上的Tkinter Canvas 上绘制相同的线

c - 如何旋转和缩放单应性

python - 创建持续不断的变化提要

java - 对随机生成的数字 vector 进行排序

java - 从 opendaylight-startup-archetype 构建的 OpenDaylight Oxygen Deploy 应用程序

java - 从 Java 构建的 SQL 查询中存在无效字符 "200b"

ibm-cloud - Bluemix 上的高可用性

java - 未报告的异常 IOException

python - 云中的 OpenCV

java - 尝试使用 Java 和 VCAP_SERVICES 运行 MessageHub 接收器时出现错误