hinzufügen von openCV java buildpath in eclipse
Ich habe Probleme mit dem hinzufügen, openCV, um den buildpath von meinem eclipse-Projekt. Ich habe folgte die Anweisungen im tutorial auf dieser Seite: http://docs.opencv.org/2.4.4-beta/doc/tutorials/introduction/desktop_java/java_dev_intro.html#create-a-simple-java-project-in-eclipse
Aber ausführen das code-fragment gibt diese Ausgabe der Konsole:
Exception in thread "main" java.lang.UnsatisfiedLinkError: no opencv-java2.4.4 in java.library.path
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at camStatisticsTests.RawTests.main(RawTests.java:20)
Was muss ich tun, um zu bekommen, openCV arbeiten mit java und eclipse. ich möchte es zu benutzen, wie eine normale java-Bibliothek.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich hatte das gleiche problem.
Es geschah, weil ich einen Fehler hatte mit der "Native library location" Konfiguration:
Springen Eclipse -> Fenster -> Einstellungen:
Goto-User-Bibliotheken:
Stellen Sie sicher, dass Sie Ihre native library location Pfad ist (ändern c:/opencv-2.4.9 zu Ihrer eigenen opencv-Ordner):
und nicht:
(Ich habe die /java Ordner...)
Die OpenCV java-Bibliothek korrekt verbunden ist zu Ihrem Eclipse-Projekt.
Das problem ist die native Bibliothek OpenCV, die nicht in der
java.library.path
. Die Ausnahme wird ausgelöst durch die Liniedem link, der java-Bibliothek die einheimischen.
Bei der Installation von OpenCV auf Ihrem computer, es installiert auch eine native
dll
Bibliothek irgendwo auf Ihrem system, und wenn Sie rufen Sie dieSystem.loadLibrary
Sie sagen, java zu suchen und laden Sie diese Bibliothek.Ihrem aktuellen problem ist Java nicht finden können, diese Bibliothek in Ihrem System, entweder weil die Bibliothek nicht in einem der
java.library.path
Ordner, oder weil Sie nicht OpenCV installiert (auch die version, vielleicht haben Sie nicht das 2.4.4 weil das die Letzte ist, 2.4.5, in dem Fall müssen Sie passen Sie die Zeichenfolge).Ich habe gerade bemerkt, dass die Ausnahme über "opencv-java2.4.4". Werden Sie sicher, dass die richtige Schreibweise der form "opencv_java244", in Ihrem
System.loadLibrary
nennen.Ich auch leiten Sie auf eine meiner Antwort, die im Zusammenhang mit JavaCV, aber das zu erklären, in mehr details, was Los ist unter.
java.library.path
angegeben, die in der Eclipse-native-build-path (was Sie getan haben), oder durch die übergabe-Djava.library.path
Kommandozeile. Der Grund, warum dll wird benötigt für OpenCV ist, denn OpenCV ist eine C++ - Bibliothek zu verwenden, die von Java müssen wir JNI. JNI-maps-java-Methode Aufrufe von nativen Bibliothek Methoden, die schließlich Aufruf der OpenCV-Bibliotheken, um "die Arbeit".Habe eine Lösung gefunden. Die dll befindet sich in der
openCV\opencv\build\java\x64\
Ordner. In meinem Fall, sein name istopencv_java247.dll
, so dass ich mich geändert habeSystem.loadLibrary("opencv_java244")
zuSystem.loadLibrary("opencv_java247")
in meinem java-code. Ich habe ebenfalls das native library location alsE:/Sagar_tools/tools/openCV/opencv/build/java/x64
(das ist mein voller Pfad zu der dll).Für mich, Eclipse > externe jar > native Bibliothek config = opencv/build/lib
gearbeitet
Habe ich die Lösung gefunden. Das tutorial überspringt den Schritt, wobei man hinzufügen einer dll, auf die "native build path". Die dll befindet sich in "opencv/build/java/x86" für 32-bit-java denke ich. obwohl ich weiß nicht, warum dies der Fall ist. Wäre nett, wenn jemand erklären könnte, dass.
Ändern Sie den code, um
System.loadLibrary("opencv_java244")
hoffe, Sie setzen würden, wird der native Pfad zum richtigen Ordner und opencv-Glas gesetzt hat, im build-Pfad