[spring boot] scala와 gradle 연동시 cool swapping (live reload) 되게 하기 (with intellij idea 14, 15)
scala 2015. 10. 28. 21:24scala + 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)를 누른다.
intellij idea에서 소스를 수정하고 Command + s를 눌러본다. devtools가 제대로 작동하는지 확인할 수 있다.
추가
intellij 15로 업그레이드 하다가 아래와 같은 에러가 발생했다.
Warning:scala: skipping Scala files without a Scala SDK in module(s) project-name
기존 scala 정보를 못쓰고 있었을 수 있다. setup Scala SDK를 살펴보고 올바르게 설정하면 더이상 문제가 발생하지 않는다.
'scala' 카테고리의 다른 글
scala + scalatra + gradle (0) | 2015.11.30 |
---|---|
[scalatra] scalate 에러 - java.lang.NoSuchMethodError: scala.tools.nsc.Global$gen$.mkBlock (0) | 2015.11.30 |
scala + spring boot + gradle (0) | 2015.10.19 |
[scala] java.lang.VerifyError: class com.fasterxml.jackson.module.scala.ser.ScalaIteratorSerializer overrides final method withResolved. 해결하기 (1) | 2015.10.16 |
Play2/Play1 framework의 Schedule 작업 (0) | 2015.03.25 |