scala + spring boot + gradle 연동시 cool swapping 되게 하는 팁이다.


0. intellij idea 먼저 scala plugin을 설치한다.



1. 터미널

# ./gradlew bootRun


소스 수정하면 자동으로 spring boot devtools에 의해 cool swapping된다.

(만약 자동 재시작이 되지 않으면, ./gradlew compileScala 를 실행한다.)




2. Intellij 에서 spring boot 실행시켜 사용하기

실행은 gradlew의 bootRun을 실행한다. 


오후 8:47:53: Executing external task 'bootRun'...

:processResources UP-TO-DATE
:classes
:findMainClass
:bootRun

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::  (v1.3.0.BUILD-SNAPSHOT)
...

 소스 수정 후, 매번 사람 손으로 Intellij idea의 Build -> Make Project (%F9)를 선택해야 한다.




3. Intellij 에서 spring boot 실행시키고 custom macro + key map 연동 사용하기 (강추)

idea에서 소스 변경하여 저장할 때마다 컴파일이 안되서, macro를 사용한다. idea는 매크로를 지원한다. 

매크로를 추가한다.

Edit -> Macros -> Start Macro Recording 

Build -> Make Project 선택

Edit -> Macros -> Stop Macro Recording 



매크로의 이름을 compileScala로 저장했다.



제대로 저장했는지 확인한다. 




macro롤 key map에 바인딩한다. 




Macros -> Add keyboard에 커서를 두고 마우스 오른쪽 버튼을 눌러 Add Keyboard Shortcut을 선택하고 저장 쇼컷(Command + s)를 누른다.


ok 버튼을 누르고 다이얼로그 창을 모두 내린다. 

intellij idea에서 소스를 수정하고 Command + s를 눌러본다. devtools가 제대로 작동하는지 확인할 수 있다.



참조 : https://www.jetbrains.com/idea/help/accessing-settings.html



추가

intellij 15로 업그레이드 하다가 아래와 같은 에러가 발생했다.
Warning:scala: skipping Scala files without a Scala SDK in module(s) project-name

 기존 scala 정보를 못쓰고 있었을 수 있다. setup Scala SDK를 살펴보고 올바르게 설정하면 더이상 문제가 발생하지 않는다.


Posted by '김용환'
,