0

当我使用“javah”使用 JNI 生成头文件时,它显示

Error: Class org.opencv.core.Mat could not be found.

系统:Mac OSX

使用:Android Studio 和 opencv 3.1 for android

命令行:

javah -classpath /Users/lumeng/Library/Android/sdk/platforms/android-23/android.jar:. com.lumenghz.test.OpencvHelper

谁能帮我?

Edit-1 我也试过

javah -d ~/Documents/androidworkspace/RumenTest/test/src/main/jni -classpath /Users/lumeng/Library/Android/sdk/platforms/android-23/android.jar:. com.lumenghz.test.OpencvHelper

但仍然得到同样的错误:

Error: Class org.opencv.core.Mat could not be found.
4

2 回答 2

1

你在这里给出了错误的类路径:

com.lumenghz.test.OpencvHelper

像这样给出完整的类路径:

~/Documents/androidworkspace/RumenTest/openCVLibrary310/build/intermediates/classes/debug:. com.lumenghz.test.OpencvHelper

  javah -d (JNI Folder Location) -classpath (JAR Locaion);(class Path)

根据您的路径示例-

 javah -d ~/Documents/androidworkspace/RumenTest/test/src/main/jni -classpath /Users/lumeng/Library/Android/sdk/platforms/android-23/android.jar;~/Documents/androidworkspace/RumenTest/openCVLibrary310/build/intermediates/classes/debug: com.lumenghz.test.OpencvHelper
于 2016-09-01T07:05:34.663 回答
0

解决了

我应该声明已构建的 opencv-sdk-android 的类路径。

所以命令行应该是这样的:

javah -classpath ~/Documents/androidworkspace/RumenTest/openCVLibrary310/build/intermediates/classes/debug:. com.lumenghz.test.OpencvHelper
于 2016-09-01T03:17:13.420 回答