2008-09-24 3 views
1

JVLC을 사용하려고하는데 작동하지 않는 것 같습니다. jar 파일을 다운로드했는데 VLC을 설치하고 -D 인수를 JVM에 전달하여 VLC가 설치된 위치를 알려줍니다. 나는 또한 시도했다 :JVLC (Java 바인딩 for VLC) 사용 방법은 무엇입니까?

NativeLibrary.addSearchPath("libvlc", "C:\\Program Files\\VideoLAN\\VLC"); 

행운 없음. 나는 항상 얻는다 :

Exception in thread "main" java.lang.UnsatisfiedLinkError: Unable to load library 'libvlc': The specified module could not be found.

누구나 만들었습니까?

+1

요즘에는 더 나은 대안이 VLCJ가 될 것입니다 : http://code.google.com/p/vlcj/ JVLC 프로젝트는 꽤 많이 죽었고 VLCJ는 오랫동안 그것을 뛰어 넘었습니다. – berry120

답변

1

로드하려고하는 dll에 사용할 수없는 다른 dll이 필요한 경우 해당 예외가 발생할 수 있습니다. 미안하지만 좀 더 구체적인 도움이 될 수는 없지만 체크 아웃해야 할 부분입니다. depends을 사용하여 dll 의존도를 처리 할 수 ​​있습니다.

1

해당 NativeLibrary 클래스에 대해 확실하지 않습니다. 일반적으로 네이티브 라이브러리를 사용하는 경우 시스템 속성 인 "java.library.path"를 네이티브 라이브러리의 위치로 설정해야합니다. 제안 된대로 네이티브 라이브러리 (dll, so 등)가 추가 네이티브 라이브러리에 의존하는 경우 OS는 이러한 종속성을 해결하기 위해 인수합니다. OS는 java.library.path와 네이티브 라이브러리에 대한 OS 특정 경로를 검색하여 beging에 대한 단서가 없습니다. 창에는 현재 PATH 환경 변수와 Windows32의 System32가 포함됩니다. linux에서는 LD_LIBRARY_PATH/ld.conf 설정입니다.

PATH (LD_LIBRARY_PATH)가 java.library.path와 동일한 위치를 가리 키도록 설정하십시오. 유일한 catch는 프로세스가 시작되는 (JVM) 것을 설정할 수 없다는 것입니다. 이미 너무 늦었습니다. JVM이 시작되기 전에 환경을 설정해야합니다. 배치 파일, 셸 스크립트, Ant 또는이 IDE에서 직접 수행 할 수 있습니다.

1

나는 똑같은 문제가 있었고 64 비트 jdk/jre에서만 발생한다는 것을 알았다. Win7 x64에서 32 비트 jdk가있는 매력처럼 작동합니다.

멋진 코딩을 즐기십시오!

당신은

System.load("C:\\Path\\To\\libvlc.dll"); 

적어도 라이브러리를로드 할 수 있는지 확인하도록해야

1

-Sipe. 그리고 그렇지 않으면 유용한 오류 메시지가 표시 될 수 있습니다.

(Sipe에서 언급했듯이 64 비트 JRE/JDK를 사용할 수도 있습니다.이 경우 libvlc는 절대로 발견되지 않습니다 (32 비트 전용).이 경우 32 비트 JRE/JDK로 전환해야합니다 .)