问题
When i generating header file with JNI using 'javah' it shows
Error: Class org.opencv.core.Mat could not be found.
System: Mac OSX
Using: Android Studio and opencv 3.1 for android
Commandline:
javah -classpath /Users/lumeng/Library/Android/sdk/platforms/android-23/android.jar:. com.lumenghz.test.OpencvHelper
Who can help me?
Edit-1 I also tried
javah -d ~/Documents/androidworkspace/RumenTest/test/src/main/jni -classpath /Users/lumeng/Library/Android/sdk/platforms/android-23/android.jar:. com.lumenghz.test.OpencvHelper
But still got the same error:
Error: Class org.opencv.core.Mat could not be found.
回答1:
You are giving wrong class path here:
com.lumenghz.test.OpencvHelper
Give full class path like this:
~/Documents/androidworkspace/RumenTest/openCVLibrary310/build/intermediates/classes/debug:. com.lumenghz.test.OpencvHelper
javah -d (JNI Folder Location) -classpath (JAR Locaion);(class Path)
example as per your paths-
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
回答2:
Solved
I should declare the classpath of opencv-sdk-android which been builded.
So the commandLine should be like this:
javah -classpath ~/Documents/androidworkspace/RumenTest/openCVLibrary310/build/intermediates/classes/debug:. com.lumenghz.test.OpencvHelper
来源:https://stackoverflow.com/questions/39261963/error-class-org-opencv-core-mat-could-not-be-found