mac下Tomcat运行openCV(Java)
上一篇博客介绍到java调用C++,其实当时目的是用java调用openCV,结果因为缺少了头文件还是咋地,无论如何都无法用命令行生成dylib文件。于是继续探索用java调用openCV的方法,遇到不少坑,现在和大家分享一下完整教程。
注意,开发环境是MacOS,IDEA编译器,Tomcat8,JDK1.8。
Step1.下载、安装Macports。
下载地址:https://www.macports.org/install.php
下载后得到pkg格式文件,双击安装。
Step2. 安装Xcode命令行(此玩意区别于终端)
xcode-select --install
Step3. 安装openCV+ java
sudo port selfupdate
sudo port install opencv +java
注意,+号前有空格,+号后无空格。
若中途出现错误如下:
Error: Failed to build db48: command execution failed
Error: See /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_databases_db48/db48/main.log for details.
Error: Follow https://guide.macports.org/#project.tickets to report a bug.
Error: Processing of port opencv failed
则输入以下命令删除,再重新进行Step3至无任何错误
sudo port clean db48
Step4. 安装确认
port contents opencv | grep java
出现以下信息代表安装完成:
/opt/local/share/OpenCV/java/libopencv_java341.dylib
/opt/local/share/OpenCV/java/opencv-341.jar
Step5. Idea中添加依赖
注意,我的路径是/usr/local/Cellar/opencv....., 因为我情况特殊,Step4生成的jar包和链接库都在/usr/local/Cellar/opencv/3.4.1_2/share/OpenCV/java路径下,所以你们看着办就好,确保此路径同时有jar包和链接库~
Step6. 配置VMOption
-Djava.library.path=/usr/local/Cellar/opencv/3.4.1_2/share/OpenCV/java
同样的,我的情况特殊所以路径可能和你们不一致,此处指定路径必须含有Step4生成的jar包和链接库文件。
Step7. 大功告成,web项目也能正常调用openCV了!!
我的测试代码如下
最后,此博客参考作者【彼时芒种】的文章:https://www.jianshu.com/p/020c4ea0bfc4,感谢技术分享!