Java 저장 함수/프로시저 사용을 위한 환경 설정

CUBRID에서 Java 저장 함수/프로시저를 사용하기 위해서는 CUBRID 서버가 설치되는 환경에 Java가 설치되어 있어야 한다. CUBRID는 기본적으로 SUN의 Java 가상 머신을 찾아서 실행한다. CUBRID의 Java 저장 함수와 프로시저가 실행 가능한 Java 가상 머신은 JNI 버전 1.4 이상을 구현한 것이어야 한다. SUN의 경우 JDK 1.4 이상이다.

Java 가상 머신은 CUBRID 버전(32비트 버전 또는 64비트 버전)에 맞게 설정되어야 하므로, 반드시 CUBRID 버전과 Java 가상 머신의 버전을 확인해야 한다. 32비트 Java 환경에서 CUBRID 2008 R2.x 64비트 버전을 실행하면 Java VM 라이브러리를 찾을 수 없다는 에러 메시지가 나타난다.

Windows 환경

CUBRID는 Windows 환경에서 jvm.dll 파일을 로딩하여 Java 가상 머신을 실행시킨다. CUBRID는 먼저 시스템의 PATH 환경 변수에서 jvm.dll을 찾아 로딩한다. 만약 찾지 못하면 시스템 레지스트리에 등록된 Java 런타임 정보를 이용한다. 아래는 PATH 환경 변수에 jvm.dll 파일이 있는 경로를 추가하는 예이다.

set JAVA_HOME=C:\jdk1.5.0
set PATH=%PATH%;%JAVA_HOME%\jre\bin\client

SUN의 Java 가상 머신을 사용하지 않고 다른 벤더의 구현을 사용하려면 해당 벤더의 설치에서 jvm.dll 파일의 경로를 PATH에 추가해 주어야 한다.

Linux/Unix 환경

CUBRID는 Lunix/Unix 환경에서 libjvm.so 파일을 로딩하여 Java 가상 머신을 실행시킨다. CUBRID는 먼저 LD_LIBRARY_PATH 환경 변수에서 libjvm.so 파일을 찾아 로딩한다. 만약 찾지 못하면 JAVA_HOME 환경 변수를 이용하여 찾는다. 아래는 환경 설정 파일(예 : .profile, .cshrc, .bashrc, .bash_profile 등)에 환경 변수를 설정하는 예이다. 리눅스의 경우 glibc 2.3.4이상만 지원된다.

JAVA_HOME=/home/cubrid/jdk1.5.0_10 ;export JAVA_HOME
PATH=.:$JAVA_HOME/bin:$PATH ;export PATH
LANG=korean ;export LANG
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$JAVA_HOME/jre/lib/i386:$JAVA_HOME/jre/lib/i386/client ;export LD_LIBRARY_PATH

setenv JAVA_HOME $HOME/jdk1.5.0_10
setenv LD_LIBRARY_PATH $HOME/jdk1.5.0_10/jre/lib/i386: $HOME/jdk1.5.0_10/jre/lib/i386/client:$LD_LIBRARY_PATH
set path=($path $JAVA_HOME/bin .)

SUN의 Java 가상 머신을 사용하지 않고 다른 벤더의 구현을 사용하려면 Library Path에 해당 벤더의 설치에서 Java VM(libjvm.so)이 있는 경로를 추가해 주어야 한다.

libjvm.so 파일의 경로는 플랫폼마다 다를 수 있다. 예를 들어 SUN Sparc 머신에서는 $JAVA_HOME/jre/lib/sparc 디렉터리이다.