UnsatisfiedLinkError

UnsatisfiedLinkError (링크 미충족 오류)

Java 가상 머신이 native로 선언된 메서드에 대한 적절한 네이티브 언어 정의를 찾을 수 없을 때 던져지는 오류입니다. LinkageError의 하위 클래스입니다.

출처: Java API Reference

본문

네이티브 메서드는 JNI(Java Native Interface)를 통해 네이티브 라이브러리로 구현되는데, 해당 라이브러리가 로드되지 않았거나 메서드 시그니처가 일치하지 않으면 이 오류가 발생합니다.

일반적으로 System.loadLibrary() 또는 System.load()로 네이티브 라이브러리를 로드하거나, 네이티브 코드의 심볼이 올바르게 정의되었는지 확인하여 해결합니다.

주로 네이티브 라이브러리를 로드하는 System.loadLibrary() 호출이 실패하거나, JNI 메서드의 네이티브 심볼이 발견되지 않을 때 발생합니다.

라이브러리 경로가 올바른지, 네이티브 메서드의 이름과 시그니처가 일치하는지 확인해야 합니다.

플랫폼별 라이브러리 확장자와 아키텍처(32/64비트)도 반드시 일치해야 합니다.

더 알아보기 (Learn more)

Java 공식 API