Mac安装opencvJava踩坑

news/2025/2/12 8:17:53/

SpringBoot导入opencv依赖

  1. 先将jar包添加到libraries中
  2. 在resources目录下创建lib文件夹并复制jar包到这里
  3. 添加如下依赖,并刷新maven
<dependency><groupId>org.opencv</groupId><artifactId>opencv</artifactId><version>4.8.0</version><scope>system</scope><systemPath>${project.basedir}/src/main/resources/lib/opencv-480.jar</systemPath>
</dependency>
<!--这里我的jar包是opencv-480.jar。所以我的版本就是4.8.0-->

使用homebrew下载opencv

如果需要下载Java的opencvjar包需要更改下面路径中的java选项,把OFF改成ON

/opt/homebrew/Library/Taps/homebrew/homebrew-core/Formula/opencv.rb

最终会在

/opt/homebrew/Cellar/opencv/4.8.0_1/share/java/opencv4/

路径下生成一个jar包和一个dylib文件

这个ajr包需要通过idea添加到项目

这个.dylib文件需要放到Java的环境配置路径中,路径如下(如果不放会出现no opencv_java480 in java.library.path报错)

/Library/Java/Extensions/

jdk在下面的路径中

/Library/Java/JavaVirtualMachines/

jdk版本错误更改

类文件具有错误的版本 63.0, 应为 52.0

报错

java: 无法访问 org.opencv.face.LBPHFaceRecognizer
错误的类文件: /Users/xxx/opencv-4.7.0/build/bin/opencv-470.jar!/org/opencv/face/LBPHFaceRecognizer.class
类文件具有错误的版本 63.0, 应为 52.0
请删除该文件或确保该文件位于正确的类路径子目录中。

解决

将 opencv-470.jar 使用 Java8 重新编译打包。

要将整个 opencv-470.jar JAR 文件的版本设置为 JDK 8 兼容的版本,您可以使用以下步骤:

  1. 在您的计算机上安装 JDK 8 或更高版本,并将其配置为默认的 Java 版本。

  2. 使用 jar 命令解压 opencv-470.jar JAR 文件。在命令行中,切换到包含 opencv-470.jar 的目录,并运行以下命令:

    jar xf opencv-470.jar

    这将会在当前目录下创建一个名为 org 的目录,其中包含 opencv 目录和所有的类文件。

  3. 使用 javac 命令编译所有的类文件,并将目标版本设置为 JDK 8。在命令行中,切换到包含 org 目录的父目录,并运行以下命令:

    javac -source 8 -target 8 -cp opencv-470.jar org/opencv/**/*.java

    这将会使用 JDK 8 编译器编译 opencv 包中的所有 Java 源代码,并将目标版本设置为 JDK 8。

  4. 使用 jar 命令重新打包所有的类文件为 opencv-470.jar JAR 文件。在命令行中,切换到包含 org 目录的父目录,并运行以下命令:

    `jar cf opencv-470.jar org

    这将会重新打包所有的类文件,并将它们放回 opencv-470.jar JAR 文件中。

  5. 最后,您可以使用 javap 命令检查 opencv-470.jar JAR 文件的版本是否已更新为 major version: 52。在命令行中,切换到包含 opencv-470.jar 的目录,并运行以下命令:

    `javap -verbose -classpath opencv-470.jar org.opencv.core.Core

    其中,org.opencv.core.Core 是任意一个在 opencv-470.jar 中的类。如果输出中的 major version52,则表示该 JAR 文件已成功转换为 JDK 8 兼容的版本。


http://www.ppmy.cn/news/1201399.html

相关文章

清华交叉信息研究院2024届推免拟录取名单

直博生 硕士 分析 清华交叉信息研究院在推免中共录取直博生41人&#xff0c;其中081200计算机科学与技术24人&#xff0c;物理学17人&#xff1b; 共录取硕士生7人&#xff0c;都是081200计算机科学与技术专业 本文由博客一文多发平台 OpenWrite 发布&#xff01;

算法leetcode|87. 扰乱字符串(rust重拳出击)

文章目录 87. 扰乱字符串&#xff1a;样例 1&#xff1a;样例 2&#xff1a;样例 3&#xff1a;提示&#xff1a; 分析&#xff1a;题解&#xff1a;rust&#xff1a;go&#xff1a;c&#xff1a;python&#xff1a;java&#xff1a; 87. 扰乱字符串&#xff1a; 使用下面描述…

前端工程化(vue脚手架安装)

用命令行安装&#xff0c;先安装NodeJs&#xff0c;配置环境变量 1.npm config set prefix "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Node.js" //引号内路径是NodeJs安装所在路径 2.npm config get prefix 查看其是否成功 3.npm install -g vue/cli 4…

vue + axios + mock

参考来源&#xff1a;Vue mock.js模拟数据实现首页导航与左侧菜单功能_vue.js_AB教程网 记录步骤&#xff1a;在参考资料来源添加axios步骤 1、安装mock依赖 npm install mock -D //只在开发环境使用 下载完成后&#xff0c;项目文件package.json中的devDependencies就会加…

京东大数据:2023年Q3美妆行业数据分析报告

近日&#xff0c;珀莱雅发布三季报&#xff0c;今年前三季度&#xff0c;公司实现营收52.49亿元&#xff0c;同比增长32.47%。分季度看&#xff0c;“618大促”所在Q2业绩增长最为亮眼&#xff0c;营收同比增速达到46.22%&#xff0c;进入Q3&#xff0c;在电商大促缺席情况下&a…

UVM源码--uvm_component 浅析(一)

目录 1. uvm_object 2. uvm_component 3. 为什么在uvm_component 例化是需要指定一个parent&#xff1f; 4.uvm_component 的树形结构是如何组织起来的&#xff1f; 5. 静态函数与非静态函数的区别&#xff1a; 6. uvm_root 的单实例实现思路&#xff1a; 7. run_test 的…

antv/x6 自定义html节点并且支持动态更新节点内容

antv/x6 自定义html节点 效果图定义一个连接桩公共方法注册图形节点创建html节点动态更新节点内容 效果图 定义一个连接桩公共方法 const ports {groups: {top: {position: top,attrs: {circle: {r: 4,magnet: true,stroke: #cf1322,strokeWidth: 1,fill: #fff,style: {visib…