IDE를 IntelliJ로 사용하고 있다.
깃허브 레포지토리에서 스칼라 프로젝트(ZIO)를 받아와 세팅하는데, sbt 빌드를 눌러도 관련 클래스들의 import 가 제대로 되지 않는 현상이 있었다.
어떤 의존성들은 바로 Main 클래스에서 run 을 하면 정상 실행은 되었지만, 어떤 의존성들은 아예 import 할 수 없는 상태여서 실행이 되지 않았다.
컴퓨터의 환경설정 문제인건가 싶어 한참을 고민했다.
"어떤 의존성들은 바로 Main 클래스에서 run 을 하면 정상 실행은 되었지만"
이 부분이 찜찜했다. 어떤 조건에서는 되고, 어떤 조건에서는 안되는 것인가?
Main class를 run 하는 방법은 여러가지이다.
IntelliJ 에서 Main 클래스 왼쪽의 초록색 버튼을 누르는 방법도 있고, 터미널에서 sbt
를 실행시킨 후 run Main
을 한다거나, 앱을 실행하기 위해 sbt run
을 입력하는 방법도 있다. (정확한건 공식문서 참고)
그 중 터미널에서 직접 실행하는 방법을 사용했을 때에는 실행이 되고 앱이 정상적으로 켜지는 것을 발견했다. 이건 IntelliJ의 설정 관련된 문제일 것이라는 직관이 강하게 들었다.
sbt 빌드 설정에 들어가서 사진과 같이 sbt projects 의 sbt shell 설정을 해주었다. (자세한 스텝은 ref 링크를 참고)
이후 build.sbt 파일의 변경이 잘 불러와 졌다.
ref)
https://www.jetbrains.com/help/idea/run-debug-and-test-scala.html#run_sbt_scala_app