如何使用 Intellij Idea 让 OpenCv 与 Grails 3 一起工作?

How to get OpenCv to work with Grails 3 using Intellij Idea?

我无法让 OpenCV 与 Grails 一起工作。我有以下错误:

no opencv_java2413 in java.library.path

我已经在 "C:\opencv" 中安装了最新的 OpenCV (2.4.13),并添加了以下 Gradle 依赖项:

compile files('libs/opencv-2413.jar')

并编辑了 运行 配置: 但我仍然遇到同样的错误(尝试清理、重建...)

可能是找不到 jar 文件?我很擅长以这种方式破坏构建,您可以尝试将其作为绝对路径而不是相对路径吗?

compile files('c:/opencv/libs/opencv-2413.jar')

顺便说一句:您是否遵循了任何特定的指南或食谱? 我希望已经完成了一个简单的插件,它使用事件处理或其他东西将其作为服务,这些可能是不确定的长 运行 进程,对于网页响应时间来说并不理想。 编辑以添加图像: 所以我d/l3.1的版本。这就像 grails 2x vs 3.x 的决定,我都用过,我认为 3.x 有更多的特性,而且绝对足够稳定。像 grails 一样,那里有很多 2.x 人。 使用 IDEA 导入 Eclipse 工程。 他们有一个 "ant" 示例,它不是 gradle 或 grails,但基本 java 版本工作表明这是 class 路径或 .dll 源路径问题。 我将尝试构建一个简单的 HW grails 示例,看看我是否可以编译它。你能得到一个基本的 java 示例吗?

知道了!向我的 vv.Hello.java class 添加大量日志记录(IDK,如果这适用于 groovy 或不适用) "files" 目录到底是什么?
GRAILS GURUS 是从哪里来的? 我把我的 DLL 放在那里 & 它只是工作。哈哈。我的是 310 你的是 24x.

编辑:原来.dll 必须在文件目录和系统路径中。添加示例代码片段以查看系统的位置(即:如果您在运行宁码头或其他地方。)将 DLL 放入两者。然后 运行 它。为了从 IntelliJ 将其传输到 运行,我不得不将 dll 放到这个系统目录中:

C:\Windows\System32\WindowsPowerShell\v1.0\ 和这里: user.dir=C:\grdev\hwopencv\files\ 见下文。 GitHub sample of what I got working

https://github.com/kmacpher67/grails-opencv-sample/blob/master/README.md

我的座右铭是:"When in doubt, log the crap of everything, till there's enough log files to crash the o/s and end the futility!"

System.out.println("Welcome to OpenCV " + Core.VERSION); System.out.println("Welcome to OpenCV NATIVE_LIBRARY_NAME= " + Core.NATIVE_LIBRARY_NAME); String opencvpath = System.getProperty("user.dir") + "\files\"; System.out.println("user.dir="+opencvpath); String libPath = System.getProperty("java.library.path"); System.out.println("libPath="+libPath); System.load(opencvpath + Core.NATIVE_LIBRARY_NAME + ".dll");

我对 libs 又爱又恨。当他们为您施展魔法时,请爱他们!当他们这样对我的时候。 感谢您激励我解决这个问题!

注意 2:我也是从 groovy 开始工作的!使用不同的静态加载器语法(参见示例控制器方法 index1 Runtime.getRuntime().load0(groovy.lang.GroovyClassLoader.class, path)