[자바] 밑줄 (_) 이 들어가는 JNI 함수명
JNI에서는 함수명에 자바의 패키지 경로를 모두 쓰게 되는데, 그 때에 .(점)을 _(밑줄)로 치환하게 됩니다. 따라서 자바 함수명 자체에 밑줄이 있으면 문제가 생깁니다. 이런 경우 자바 함수명에 있는 밑줄은 JNI에서 _1로 치환하면 됩니다. 아래는 간단한 예제입니다.
// 자바
package com.tistory.crmn;
public class Hello {
static native int get_hello();
}
// JNI
extern "C" JNIEXPORT jint JNICALL
Java_com_tistory_crmn_Hello_get_1hello(JNIEnv* env, jobject thiz) { // get_1hello에 주목하세요
return (jint) 1;
}
'개발 > 자바' 카테고리의 다른 글
[자바] JNI에서 jboolean을 bool로 바꾸기 (0) | 2019.03.05 |
---|---|
[코틀린] 물음표(?)의 기능 (0) | 2019.01.25 |
[자바] 배열 내용 출력하기 (Arrays.toString()) (0) | 2018.05.31 |
[자바] JNI 시그니처 (Signiture) (0) | 2018.02.27 |
[코틀린] 문자열에서 부분 문자열 추출하기 (슬라이싱) (0) | 2018.01.29 |