[英]Exception in thread "main" java.lang.UnsatisfiedLinkError"
[英]Java, OpenCV Exception in thread “main” java.lang.UnsatisfiedLinkError:
我正在嘗試在Windows上的Eclipse中使用OpenCV 2.4.9。 我像本教程中那樣設置Eclipse http://docs.opencv.org/trunk/doc/tutorials/introduction/java_eclipse/java_eclipse.html ,但是當我單擊“運行”時,得到了以下消息:
Exception in thread "main" java.lang.UnsatisfiedLinkError: F:\opencv\build\java\x86\opencv_java249.dll:
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary1(Unknown Source)
at java.lang.ClassLoader.loadLibrary0(Unknown Source)
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at pl.forbot.test.Hello.main(Hello.java:11)
碼:
import org.opencv.core.Core;
import org.opencv.core.CvType;
import org.opencv.core.Mat;
public class Hello
{
public static void main( String[] args )
{
System.loadLibrary( Core.NATIVE_LIBRARY_NAME );
Mat mat = Mat.eye( 3, 3, CvType.CV_8UC1 );
System.out.println( "mat = " + mat.dump() );
}
}
我僅針對“線程“主”中的異常java.lang.UnsatisfiedLinkError:java.library.path中沒有opencv_java246”之類的問題找到了答案,但是沒有成功。 我是Java的新手,請幫助我。
首先,我們必須驗證在System.loadLibrary
方法中傳遞的參數正確,並且該庫確實存在。 請注意,不需要擴展庫。 因此,如果您的庫名為SampleLibrary.dll,則必須將SampleLibrary
值作為參數傳遞。
此外,如果您的應用程序已經加載了庫,並且應用程序嘗試再次加載它,則JVM將拋出UnsatisfiedLinkError。 另外,您必須驗證本機庫是否存在於應用程序的java.library.path或PATH環境庫中。 如果仍然找不到該庫,請嘗試提供System.loadLibrary方法的絕對路徑。
為了執行您的應用程序,請使用-Djava.library.path參數來顯式指定本機庫。 例如,使用終端(Linux或Mac)或命令提示符(Windows),通過發出以下命令來執行應用程序:
java -Djava.library.path= "<path_of_your_application>" –jar <ApplicationJAR.jar>
UnsatisfiedLinkError的示例
public class UnsatisfiedLinkErrorExample {
// Define a method that is defined externally.
native void CFunction();
// Load an external library, called "clibrary".
static {
System.loadLibrary("clibrary");
}
public static void main(String argv[]) {
UnsatisfiedLinkErrorExample example = new UnsatisfiedLinkErrorExample();
example.CFunction ();
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.