JAVA2(JDK1.2.2)의 설치 및 환경 설정

 김진덕 hexcode@mail.hanyang.ac.kr (한양대 리눅스 사용자 모임)
java2forlinux.html  23 Jan 2000, ver0.0.1

1. 최신 JDK1.2.2버전 개발킷 구하기
2. JDK1.2.2 설치 하기
3. 환경 설정 하기

 

1. 최신 JDK1.2.2버전 개발 킷 구하기

JDK1.2.2는 최근 배포판(래드햇 6.0, 커널 2.2.x)을 요구합니다. 그전에는 자바를 개발한 선 마이크로시스템즈에서 공식적으로 리눅스용 자바 개발 킷을 지원하지 않아서 그동안 블랙다운에 의한 선 마이크로 시스템즈용을 리눅스에서 포팅된 버전을 사용하였습니다. 그러나 1999년 12월부터 선 마이크로시스템즈에서도 리눅스용 자바 개발 킷을 공식 지원함으로서 리눅스에서도 자바 개발 환경에 대한 선 마이크로 시스템즈의 최신 버전의 지원을 받을 수 있게 되었답니다.

 그러므로 이제는 자바 개발 킷 JDK1.2.2 부터는 선 마이크로시스템즈의 자바 공식 사이트 http://java.sun.com 에 가셔도 있습니다.  블랙다운에서 제공하는 JDK1.2.2버전은 http://www.blackdown.org 에 가셔서 구하면 됩니다. 현재 버전은 JDK1.2.2 RC3까지 릴리즈 되었답니다.

블랙다운의 미러 사이트를 알려드립니다. http://www.blackdown.org/java-linux/mirrors.html에 가시면 미러 사이트들이 쭉 나열되어 있으니 가장 빠른곳에서 받으시면 됩니다.

IBM에서도 자바 개발 킷을 만드는데 IBM것이 리눅스에서는 더 빠른 동작을 한다고 알려져 있습니다. 블랙다운에서 선의 자바를 포팅한 것은 선의 JDK를 포팅한 것이라서 네이티브 스레드에 대한 지원이 확실하지 않다고 합니다. 이에 반면 IBM이 배포한 것은 다중 프로세서의 이점을 이용할수 있습니다. http://www.ibm.com/java 에서 구할수 있습니다. 그러나 IBM은 개발속도가 조금 느립니다. JAVA2에서는 많은 변화가 있는데 아직 구버전 환경이니 최신 자바 기술을 적용하지 못한다는 조금 아쉬운 감이 있습니다. 그렇지만 IBM의 JDK가 리눅스에서는 더욱더 안정적이고 빠릅니다.

http://www.blackdown.org 에서는 JDK1.2.2 RC3 까지 발표 를 했지만 IBM은 IBM_JDK1.1.8까지 발표를 한것 같습니다. 블랙다운의 JDK1.2.2 RC3 버전에서는 더욱더 안정적인 성능을 발휘 합니다.

 또한 IBM에서는 자바 컴파일러 javac를 더 빠르게 컴파일 해주는 jikes가 있습니다. IBM의 jikes가 리눅스 용으로도 나와 있습니다. Jikes는 javac와 같은 컴파일러지만, c++로 만들어졌습니다. 주요 기능으로는 빠른 java compile, make 에서 쓸 수 있는 dependency 화일 생성 및 컴파일 시 dependency를 체크하여 차례차례 자동으로 컴파일 해줍니다. glibc2.0 이상에서 동작합니다. http://www.alphaworks.ibm.com/formula/jikes에서 구할수 있습니다.

2. JDK1.2.2 설치 하기

간단 합니다. 한가지 주의 하실 점은 그전에 구버전의 자바 개발 킷 및 자바 환경이 구성 되어 있으면 먼저 전에 구성된 개발 환경을 없애야 됩니다. 그래야 그전에 있던 개발킷 찌꺼기와 최신 자바 개발킷 환경이 충돌이 안납니다. 배포판을 새로 설치 하셨다면 대부분 자바 개발 환경 구성이 되어 있지 않으므로 신경 안쓰셔도 됩니다.

개발킷 파일을 블랙다운에서 구한 것을 먼저 설명 드리면 JDK1.2.2에서는 리눅스의 glibc 버전이 좀 높아야 됩니다. 아마 JDK1.2.2는 래드햇 6.1 이상을 원할 것입니다. 이와 반면에 선 마이크로 시스템즈에서 구한 것은 래드햇 6.0 이상이면 되더군요. glibc 버전이 낮으면 깔리긴 깔려도 자바 가상머신 java나 자바컴파일러 javac에서 오류를 낼 것입니다. 블랙다운에서 구한 JDK1.2.2는 glibc-2.1.2-5 이상 이면 될것입니다.   

JDK1.2.2을 블랙다운에서 구했다면 스크립트 파일 버전을 구하시면 편합니다. 스크립트 파일이기 때문에 쉘상에서 그냥 명령만치면 됩니다.

jdk-1_2_2-RC2-linux-i386-glibc-2_1_2.sh  이것이 제가 구한 파일인데 보기에도 뒤에 glibc-2_1_2라고 써있죠? 요구하고 있는 glibc버전이을 말합니다.

압축된 스크립트 파일이기 때문에 그냥 깔기 원하는 디렉토리 아무데나 옮기셔서 위에 스크립 파일을 실행 시키면 자동으로 깔립니다. 마치 윈도우즈에 압축 자동 풀림 파일과 같은 원리라고 생각 하시면 됩니다.

#./jdk-1_2_2-RC2-linux-i386-glibc-2_1_2.sh

저는 / 밑에 깔았습니다. 깔리면 아마 /jdk1.2.2라는 디렉토리가 생겼을 것입니다.

두 번째로 선 마이크로 시스템즈에서 구한 JDK1.2.2를 깔아 보기로 합시다. 둘중에 하나만 깔으셔야 됩니다. 둘중에 어느것이 좋은지는 아직 저는 모르겠습니다. 제가 써본 결과로는 성능상 차이를 거의 느끼지 못했습니다. 선 마이크로 시스템즈에서 제공하는 JDK1.2.2 버전의 파일명은 jdk1_2_2rc2-linux-i386.tar.gz입니다.

파일 명을 보니까 gzip 압축 및 tar로 묶여 있군요. 그럼 풀어 봅시다.

#tar -xvzf jdk1_2_2rc2-linux-i386.tar.gz

그러면 현재 디렉토리 내에 jdk1.2.2라는 디렉토리가 생겼을 것입니다.

3. 환경 설정 하기

설치는 잘 되었을 것입니다. 더욱더 편리하게 쓰기위해서는 각자의 쉘 환경파일에 약간의 환경 설정 작업을 해주셔야 됩니다. 대부분 자바를 응용 하는 프로그램들은 /usr/local/java라는 디렉토리를 자바 기본 디렉토리로 쓰고 있는데 jdk1.2.2 디렉토리를 그쪽으로 디렉토리 명을 바꾸어서 옮기시거나 아니면 심볼릭 링크를 하시면 됩니다. 저의 경우엔 심볼릭 링크를 걸어 두었답니다. 방법은 아래와 같습니다.

#ln -s /jdk1.2.2 /usr/local/java

/jdk1.2.2 디렉토리를 /usr/local/java 디렉토리로 링크를 걸었습니다.

그다음으로 할 일은 자바 가상머신 명령(java)이나 컴파일 명령(javac)등이 아무 디렉토리 에서 실행 할 수 있도록 패스를 걸어 두는 작업을 하면 됩니다. 대부분 래드햇 배보판은 본어겐스트쉘(bash)를 많이 쓰므로 그 기준으로 설명을 드리면 /etc/profile 파일을 열으셔서 새로운 패스를 추가 하시면 됩니다.

 export PATH="$PATH:/usr/X11R6/bin:/usr/local/java/bin"

/usr/local/java/bin 디렉토리에 javac, java명령들이 있으므로 그 디렉토리를 패스에 추가 하였습니다.

패스를 추가하셨으면 환경 변수를 추가 시키면 됩니다. /etc/profile 파일에서 다음과 같은 항목을 추가 합니다.

 export JAVA_HOME="/usr/local/java"
 export CLASSPATH="."

자바의 기본 디렉토리를 /usr/local/java로 설정하고 CLASSPATH 파일을 현재 디렉토리를 나타내는 .를 추가 하였습니다. 유닉스/리눅스 환경에서는 현재 디렉토리에서 작업한다고 해도 자신의 현재 디렉토리 조차를 모르므로 .을 추가해서 클래스패스에 자신의 현재 디렉토리를 추가 시켜 줘야 됩니다. 그래야 자신이 만들은 클래스 파일이 그 디렉토리에 같이 있다고 하면 클래스 파일 의존이 생기는 경우에 클래스 패스를 걸지 않고서도 찾을수 있습니다.

만약 IBM JDK나 JDK1.2 미만의 구버전을 구하셨다면 다음과 같이 개발킷에 포함된 기본 클래스 파일 패스를 설정해야 됩니다. JDK1.2이상 버전 부터는 개발킷에 포함된 기본 클래스 파일 패스 구성을 할필요가 없으므로 위와 같이만 설정 하였습니다.

 export JAVA_HOME="/usr/local/java"
 export CLASSPATH=".:$JAVA_HOME/lib/classes.zip"

이정도 하시면 자바를 개발할수 있는 기본 환경 설정은 모두 완벽하게 끝낸 것입니다. source /etc/profile을 하시거나 재부팅 하시면 환경 설정이 먹을 것입니다. 그러고 난뒤 확인을 위해서 명령 프롬포트 상에서 java나 javac를 그냥 실행 해 보세요. 에러 메시지 없이 잘 실행이 되신다면 성공 하신 것입니다.

 #javac 또는 #java

이상입니다.