스칼라 개발 환경 구축 가이드 - 설치부터 설정까지
View: 546
0
0
작성자: 달빛제이크
카테고리: Scala Language
발행: 2024-05-15
수정
2024-06-21
안녕하세요. 달빛제이크 입니다.
스칼라 언어를 공부하고 싶은데 무엇부터 해야 할까요?
일단 스칼라 언어를 사용할 수 있도록 개발 환경부터 만들어 보겠습니다.
아래에 소개한 프로그램을 모두 설치할 필요는 없습니다. 본인의 목적에 맞게 선택해서 설치하시기 바랍니다.
1. Java 설치 하기
Scala는 JVM 기반 프로그래밍 언어이기 때문에 Java, 정확하게 이야기하면 JVM을 설치해야 합니다.
여러 벤더들을 통해 지원하는 배포판들 중에서 Adoptium Eclipse Temurin이나 GraalVM 이 신뢰할 만한 배포판으로 보입니다.
특히 GraalVM은 오라클에서 개발한 새로운 가상 머신으로, 고성능 컴파일러와 최적화 기술을 통해 빠른 실행 성능을 제공하기 때문에 개인적으로 사용해 보길 권장합니다.
JDK 설치 후 환경 변수에 JAVA_HOME을 추가하고, PATH 경로에 $JAVA_HOME/bin 을 추가합니다.
2. Scala 설치 하기
먼저 공식 홈페이지 ( https://scala-lang.org )에 들어갑니다.
스칼라를 설치하기 위해서 상위 메뉴의 INSTALL을 선택하거나 메인 화면의 최신 Scala version을 클릭해서 들어갑니다.
Scala 설치에 대해서 Coursier CLI를 사용하도록 설명하고 있는데 OS 별로 cs setup 하는 법이 각각 설명되어 있습니다.
Coursier CLI로는 의존성 다운로드, JAR 파일 또는 Script 파일 실행, 버전 관리 등을 편리하게 할 수 있습니다.
개인적으로 개발할 때에는 scala-cli를 사용해서 Script를 실행하거나 sbt를 활용하여 개발하기 때문에 특별히 Coursier를 사용하지는 않습니다 만, 간단한 개발이나 터미널 작업에 활용하면 간편하고 좋을 것 같습니다.
cs install을 통해 scala를 설치하거나 cs를 설치하길 원하지 않는 분들은 해당 페이지에 링크되어 있는 github에 들어가서 페이지 맨 하부의 압축 파일을 다운로드 받아 설치합니다.
JAVA 설치할 때와 동일하게 SCALA_HOME 환경변수에 해당 경로를 설정해주고, PATH 경로에 $SCALA_HOME/bin을 추가합니다.
터미널에서 scala 명령을 실행하면 REPL (Read-Eval-Print Loop) 대화형 Shell이 실행됩니다.
3. Scala CLI 설치하기
Scala CLI는 Scala 언어를 실행하고 관리하기 위한 간단한 도구 입니다. Build Tool은 아니지만 Command Line을 기반으로 의존성 관리를 포함한 다양한
기능들을 제공하기 때문에 Single Module 기반의 간단한 프로젝트를 진행하거나 Script를 통해 모든 Scala 지원 기능들을 활용할 수 있습니다.
scala-cli를 설치하면 따로 Java JDK를 설치할 필요가 없습니다. 각 OS 별로 Package 관리자를 통해 손쉽게 설치가 가능합니다.
자세한 기능들은 공식 홈페이지 ( https://scala-cli.virtuslab.org )에서 확인하실 수 있습니다.
4. sbt 설치하기
sbt (Simple Build Tool)는 Scala Build Tool로서, Scala 프로젝트를 Build하고 관리하는 데 사용합니다.
프로젝트의 Build 설정을 build.sbt 파일에 작성하고 관리합니다.
대부분의 Scala 프로젝트에서 사용하고 있으며 가장 대중화되어 있는 빌드 도구 입니다.
설치는 압축 파일을 다운로드 받아서 설치하고 Path 설정을 해주거나, 간단히 Package 관리자를 사용해서 설치합니다.
sbt를 실행하기 위해서는 Java가 먼저 설치되어 있어야 합니다.
5. IDE 활용하기
마지막으로 IDE를 사용해보겠습니다.
앞에서 설치한 것 만으로 Command Line과 Vi와 같은 에디터에서 스칼라 언어를 활용한 프로젝트 진행이 가능하지만, 규모가 큰 프로젝트의 경우에는
IDE의 도움을 받는 것이 개발 효율을 크게 향상 시킬 수 있습니다.
스칼라로 프로젝트를 진행할 때 가장 많이 사용하고 있는 IDE로는 JetBrains 사의 IntelliJ IDEA와 MS 사의 VS Code가 있습니다.
IntelliJ IDEA는 2023년 가장 많이 사용한 IDE이며 매우 훌륭한 기능들을 제공합니다. 다만 Community (무료) 버전과 Ultimate (유료) 버전으로 나누어져 있어서 Community 버전에는 지원하지 않는 기능들이 존재하기 때문에 저같이 웹을 기반으로 하는 개발자들은 불편함을 느낄 수 있습니다.
VS Code는 정확하게 말하자면 에디터이지만 IDE로서의 필요한 기능들을 Plugin으로 지원하고 있습니다. 태생이 에디터이기 때문에 한계가 있을 수 있으나 LSP를 지원하는 Scala Language Server인 Metals와 Build Tool인 sbt, VS Code의 Plugin을 활용해서 불편함 없이 개발에 임하고 있습니다.
설치는 각 공식 홈페이지에 들어가셔서 해당 파일을 다운로드 받아서 설치하면 됩니다.
IntelliJ IDEA의 경우, Windows는 exe 파일로, macOS는 dmg 파일로, Linux는 압축 파일로 제공하고 있습니다. 설치 후 Java, sbt, scala에 대한 설정을 추가로 진행해 줍니다.
VS Code의 경우, Windows는 설치 파일로, macOS는 압축 파일로, Linux는 패키지로 제공하고 있어서 각각의 경우에 맞추어 설치합니다. 설치 후에는 metals를 Plugin으로 설치를 해주고 프로젝트 진행에 필요한 설정들을 진행합니다.
IDE 설정에 대한 부분은 구글에서 쉽게 관련 글들을 찾아 참고 하실 수 있습니다.
지금까지 Scala 개발 환경 구축을 위한 다양한 프로그램 설치에 대해서 알아 보았습니다.
REPL을 통해서 간단한 계산이나 작업들을 할 수 있고, Script를 통해 쉽게 Scala program을 업무에 활용할 수 있으며, Command Line에서 쉽고 빠르게 프로그램을 컴파일하고 실행시켜 볼 수 있게 되었습니다.
간단한 프로그램부터 sbt와 IDE를 활용한 큰 규모의 프로젝트까지 Scala를 활용할 수 있는 환경이 만들어졌습니다.
Cats나 AKKA, ZIO를 활용하는 그날을 꿈꾸며 지금은 Simply Scala를 실천하기 위해 하나 씩 하나 씩 만들어 나갑시다.
감사합니다.
