확실히 SDKMAN! 쓰고 나서 내 인생이 달라졌다: SDKMAN!을 이용한 Kotlin 설치
SDKMAN!는 유닉스 기반 시스템에서 소프트웨어 개발 키트(SDK)의 버전을 관리해주는 도구입니다.
이 글에서는 SDKMAN!을 이용해 리눅스에 Kotlin을 설치하는 방법을 알아볼 것입니다.
우선 SDKMAN!을 설치합니다. cURL을 이용해 설치 스크립트를 다운받아 실행하면 간단하게 완료됩니다.
$ curl -s "https://get.sdkman.io" | bash
...
Extract script archive...
Install scripts...
Set version to 5.13.1 ...
Attempt update of interactive bash profile on regular UNIX...
Added sdkman init snippet to /home/ubuntu/.bashrc
Attempt update of zsh profile...
Updated existing /home/ubuntu/.zshrc
All done!
Please open a new terminal, or run the following in the existing one:
source "/home/ubuntu/.sdkman/bin/sdkman-init.sh"
Then issue the following command:
sdk help
Enjoy!!!
설치 중 아래와 같은 문제가 발생한다면 “Not found”인 패키지를 직접 설치해주세요.
Looking for a previous installation of SDKMAN... Looking for unzip... Looking for zip... Not found. ====================================================================================================== Please install zip on your system using your favourite package manager. Restart after installing zip. ======================================================================================================
zip
패키지는apt install
을 이용해 설치할 수 있습니다.$ sudo apt install zip
설치 스크립트로 변경된 사항을 적용합니다.
source "/home/ubuntu/.sdkman/bin/sdkman-init.sh"
SDKMAN!이 정상적으로 설치되었는지 확인합니다.
$ sdk version
==== BROADCAST =================================================================
* 2022-01-28: groovy 4.0.0 available on SDKMAN!
* 2022-01-27: micronaut 3.3.0 available on SDKMAN!
* 2022-01-27: ki 0.4.5 available on SDKMAN! https://github.com/Kotlin/kotlin-interactive-shell/releases/tag/v0.4.5
================================================================================
SDKMAN 5.13.1
정상적으로 설치된 것을 확인했으니, 다음 단계로 넘어갑니다.
Kotlin 코드를 실행하기 위해서는 JVM이 필요하기 때문에, 먼저 Java를 설치해야 합니다.
sdk list
를 이용해 SDKMAN!으로 설치 가능한 버전 목록을 볼 수 있습니다.
$ sdk list java
================================================================================
Available Java Versions for Linux ARM 64bit
================================================================================
Vendor | Use | Version | Dist | Status | Identifier
--------------------------------------------------------------------------------
AdoptOpenJDK | | 8.0.275+1.hs | adpt | | 8.0.275+1.hs-adpt
...
Temurin | | 17.0.1 | tem | | 17.0.1-tem
| | 11.0.14 | tem | | 11.0.14-tem
| | 11.0.13 | tem | | 11.0.13-tem
| | 8.0.322 | tem | | 8.0.322-tem
| | 8.0.312 | tem | | 8.0.312-tem
Zulu | | 17.0.2 | zulu | | 17.0.2-zulu
| | 17.0.1 | zulu | | 17.0.1-zulu
| | 11.0.14 | zulu | | 11.0.14-zulu
| | 11.0.13 | zulu | | 11.0.13-zulu
| | 8.0.322 | zulu | | 8.0.322-zulu
| | 8.0.312 | zulu | | 8.0.312-zulu
================================================================================
Omit Identifier to install default version 17.0.1-tem:
$ sdk install java
Use TAB completion to discover available versions
$ sdk install java [TAB]
Or install a specific version by Identifier:
$ sdk install java 17.0.1-tem
Hit Q to exit this list view
================================================================================
많고 많은 Java 버전 중에 Eclipse Temurin이 일반적으로 추천되곤 합니다.
Eclipse Temurin은 AdoptOpenJDK의 후속 프로젝트로, Adoptium에서 개발 중인 JDK입니다.
JDK 선택에 관한 자세한 내용은 Which Version of JDK Should I Use?를 읽어보면 도움이 될 것 같습니다.
참고: JDK17 이제는 AdoptOpenJDK 대신 Eclipse Temurin 사용
$ sdk install java 17.0.1-tem
...
$ java --version
openjdk 17.0.1 2021-10-19
OpenJDK Runtime Environment Temurin-17.0.1+12 (build 17.0.1+12)
OpenJDK 64-Bit Server VM Temurin-17.0.1+12 (build 17.0.1+12, mixed mode, sharing)
ubuntu@ubuntu:~$ javac --version
javac 17.0.1
Java 설치가 끝나면 Kotlin을 설치할 차례입니다.
$ sdk install kotlin
...
$ kotlinc -version
info: kotlinc-jvm 1.6.10 (JRE 17.0.1+12)
Hello World 코드를 작성해 프로그램에 문제가 없는지 확인해봅니다.
hello.kt
:
fun main() {
println("Hello, World!")
}
$ kotlinc hello.kt -include-runtime -d hello.jar
$ java -jar hello.jar
Hello, World!
끝!