[SCALA] SBT와 기본 시스템 라이브러리를 통합
SCALASBT와 기본 시스템 라이브러리를 통합
JOGL에서 사람들은 (예를 들어, 네이티브 라이브러리와 다양한 SBT 작업을 통합 할 수있는 좋은 방법은 무엇이며, LWGL, 또는 JCuda? 특히,
나는 네이티브 라이브러리에 대한 직접 SBT 설정이없는 가정합니다. 그런 일이 존재하는 경우, 위의 작업을 투명하게 네이티브 라이브러리를 처리 할 수 있을까?
해결법
-
==============================
1.java.library.path를 수정하고 System.loadLibrary를 (대부분의 사람들이 이렇게 같은 느낌)을 사용하여, 또는 함께 System.load를 사용 : 나는 과거에 수행 한 연구에서, 네이티브 라이브러리를 얻을 수있는 두 가지 방법이로드됩니다 절대 경로.
java.library.path를 수정하고 System.loadLibrary를 (대부분의 사람들이 이렇게 같은 느낌)을 사용하여, 또는 함께 System.load를 사용 : 나는 과거에 수행 한 연구에서, 네이티브 라이브러리를 얻을 수있는 두 가지 방법이로드됩니다 절대 경로.
당신이 언급했듯이, java.library.path 덤비는 것은 SBT와 이클립스를 구성하는 측면에서 성가신 수 있으며, 나는 그것을 실행 항아리에 대해 자동으로 수행 할 수 있다고 생각하지 않습니다.
그 잎 System.load 그래서. 자신의 네이티브 라이브러리를 작성하는 측면에서, 당신이 할 수있는 것은 :
(내가 난독 화는 자원을 포함 할 알고 방법을 모르는 있지만) 그 어떤 추가 구성없이 SBT 실행, 이클립스, 그리고 실행 항아리와 함께 작동합니다.
이제 이미 기록 된 타사 네이티브 라이브러리, 그들 중 일부 jblas 이미이 "지방 항아리"방법을 사용 등에있다. 그들은 당신이 java.library.path를 설정하는 기대가 그것 같이 느낄 때 그 때 System.loadLibrary를 호출하면, 당신은 그 일을하기 위해 마법을 수행해야합니다.
나는이 시도하지 않은,하지만이 솔루션은 작동 할 수 있습니다 :
물론 수동으로 사용하기 전에 타사 라이브러리를 초기화해야하기 때문에이 성가신이지만, 설정 자바에 모든 도구를 얻기 위해보다 초기화 포인트 (당신의 주요 기능 및 테스트 초기화)을 모두 포장 실현 가능성이 보인다 .library.path 올바르게. 그리고 그렇게 정말 당신이 포장해야 하나 초기화 포인트가, 당신은 이미 타사 라이브러리 위의 추상화 자신의 계층이있는 경우보다 더 쉽게 할 수있다.
즉 현실적인 해결책처럼 보인다 경우 혼동하는 경우, 나는 방법의 wrapper SBT 작업 또는 스칼라에 대한 자세한 내용을 추가 할 수 있습니다.
-
==============================
2.OSX에서 경우는 SBT 테스트 중에 /lib/*.jnilib 네이티브 libs와로드 문제가 있습니다.
OSX에서 경우는 SBT 테스트 중에 /lib/*.jnilib 네이티브 libs와로드 문제가 있습니다.
[오류]에서 java.lang.UnsatisfiedLinkError 치명적인 실행 오류 java.library.path 없음 jniortools 의한
대신 System.loadLibrary를 다음 코드 ( "jniortools")를 사용할 수 있습니다.
new File("lib").listFiles().map(_.getAbsolutePath).filter(_.endsWith("jniortools.jnilib")).foreach(System.load)
-
==============================
3.간단한 방법이있다.
간단한 방법이있다.
네이티브 라이브러리가 lib_extra 디렉토리에 저장되어 있다고 가정
from https://stackoverflow.com/questions/10761166/integrating-native-system-libraries-with-sbt by cc-by-sa and MIT license
'SCALA' 카테고리의 다른 글
[SCALA] Akka SLF4J의 logback 구성 및 사용 (0) | 2019.11.26 |
---|---|
[SCALA] 스칼라에서 선물의 순차적 인 실행을 수행하는 방법 (0) | 2019.11.26 |
[SCALA] 스칼라 - 점 표기법 대 중위 (0) | 2019.11.26 |
[SCALA] 불변의 목록에서 "제거"하나 개의 요소에 관용적 스칼라 방법은 무엇입니까? (0) | 2019.11.26 |
[SCALA] 스칼라는 미래의 순서를 기다리고 (0) | 2019.11.26 |