【发布时间】:2015-01-19 22:21:08
【问题描述】:
尝试使用“mvn clean install”命令构建 sikuli-slides-1.5.0,我得到了上面引用的堆栈跟踪。我正在使用 Windows 7,并尝试了我在这里提出的各种解决方案的说明,但无济于事。我的用户和系统定义变量的路径和 CLASSPATH 变量包括:
"C:\opencv\build\x64\vc10\bin"
我已经多次重启了我的机器。
此外,我在项目的构建路径中添加了 javacv.jar、javacv.windows-x86.jar、javacv.windows-x86_64.jar,并在我的 pom.xml 中添加了 javacv-0.9.jar。我还在我的 pom 中包含了 javacpp-0.9.jar。我可以在我的构建路径上直观地看到所有上述引用的 jar,并且可以将 jniopencv_core 导入到我的任何类中。任何帮助将不胜感激。在执行 JUnit 测试 AutomationExecutorExceptionTest.java 时,测试失败并创建一个必须手动关闭的孤立 java.exe 进程。
下面列出了完整的堆栈跟踪。
线程“Thread-60”java.lang.UnsatisfiedLinkError 中的异常:>java.library.path 中没有 jniopencv_core 在 java.lang.ClassLoader.loadLibrary(ClassLoader.java:1886) 在 java.lang.Runtime.loadLibrary0(Runtime.java:849) 在 java.lang.System.loadLibrary(System.java:1088) 在 org.bytedeco.javacpp.Loader.loadLibrary(Loader.java:535) 在 org.bytedeco.javacpp.Loader.load(Loader.java:410) 在 org.bytedeco.javacpp.Loader.load(Loader.java:353) 在 org.bytedeco.javacpp.opencv_core.(opencv_core.java:10) 在 org.bytedeco.javacpp.helper.opencv_core$AbstractIplImage.create(openc v_core.java:909) 在 org.bytedeco.javacpp.helper.opencv_core$AbstractIplImage.createFrom(o pencv_core.java:999) 在 org.bytedeco.javacpp.helper.opencv_core$AbstractIplImage.createFrom(o pencv_core.java:971) 在 org.bytedeco.javacpp.helper.opencv_core$AbstractIplImage.createFrom(o pencv_core.java:968) 在 org.sikuli.core.cv.ImagePreprocessor.createGrayscale(ImagePreprocesso r.java:43) 在 org.sikuli.core.search.TemplateMatcher.findMatchesByGrayscaleAtOrigin alResolution(TemplateMatcher.java:71) 在 org.sikuli.api.ImageTarget.getUnorderedMatches(ImageTarget.java:127) 在 org.sikuli.api.DefaultTarget.doFindAll(DefaultTarget.java:128) 在 org.sikuli.api.DefaultScreenRegion.findAll(DefaultScreenRegion.java:7 4) 在 org.sikuli.slides.api.sikuli.CrossSearchStrategy.testHypotheses(交叉 SearchStrategy.java:85) 在 org.sikuli.slides.api.sikuli.CrossSearchStrategy.perform(CrossSearchS 策略.java:39) 在 org.sikuli.slides.api.sikuli.ContextImageTarget.doFindAll(ContextImag eTarget.java:122) 在 org.sikuli.api.DefaultScreenRegion._find(DefaultScreenRegion.java:88)
at org.sikuli.api.DefaultScreenRegion.find(DefaultScreenRegion.java:80) at org.sikuli.slides.api.actions.TargetAction.execute(TargetAction.java:26) 在 org.sikuli.slides.api.actions.RetryAction.execute(RetryAction.java:51 ) 在 org.sikuli.slides.api.actions.ParallelAction$Worker.run(ParallelActio n.java:35) 在 java.lang.Thread.run(Thread.java:745)
【问题讨论】:
-
“no jniopencv_cor e”是因为您的输入或导入而导致的错误? (应该是“没有 jniopencv_core”)
-
没错。我从命令提示符复制了它。
-
能否请您发布您使用的导入?
-
你的类路径是什么?
-
你应该使用these two 我会建议更多
nu.pattern因为更接近OpenCV的C++版本,我认为它更优化