Tools/BuildTools
[gradle] Jrebel, rebel.xml 생성 태스크
허니몬
2016. 5. 22. 13:17
IDE 에서 생성한 rebel.xml
이 프로젝트와 맞지 않아서 제대로 되지 않았는데, 이를 해결할 수 있는 방법을 찾았다.
build.gradle
에 아래 스크립트를 추가하면 war
태스크가 실행될 때 war
의존성을 걸어둔 generateRebel
가 호출되면서 build/resources/main
아래에reble.xml
이 생성된다. 프로젝트의 클래스패스와 웹경로의 항목들을 출력하는 특징을 가진다.
이 태스크가 실행되기 위해서는 프로젝트에 war
플러그인이 설치되어 있어야 한다.
apply plugin: 'war'
// 생략
task generateRebel << {def rebelFile = sourceSets.main.output.classesDir.absolutePath + '/rebel.xml'def srcWebApp = project.webAppDir.absolutePathdef writer = new FileWriter(rebelFile)new groovy.xml.MarkupBuilder(writer).application() {classpath{dir( name:sourceSets.main.output.classesDir.absolutePath )}web{link(target:'/'){dir(name:srcWebApp)}}}}war.dependsOn generateRebel
생성된
rebel.xml
(1)(2)
컴파일된 클래스 핫스와핑 | |
변경된 설정파일 모니터링 |