gradle task 실행 결과가 반영되지 않는 문제
test 관련 gradle task 를 gradle 에 등록
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
tasks.register('generateDocs', org.asciidoctor.gradle.jvm.AsciidoctorTask) {
group 'Documentation'
description 'Generates HTML documentation from the Asciidoctor files'
dependsOn 'test'
sourceDir file('target/snippets')
sources {
include '**/*.adoc'
}
resources {
from('target/snippets') {
include '**'
}
}
outputDir file('src/main/resources/static/docs')
attributes(
'doctype': 'book',
'source-highlighter': 'rouge',
'backend': 'html5'
)
}
assemble.dependsOn generateDocs
위와 같은 test 관련 task 를 build.gradle 에 등록하고 test method 를 실행했을 때, asciidoctor 가 관련 adoc file 들을 html 로 변환하여 outputDir 에 생성할 수 있도록 만들려고 했다.
문제 발생
하지만, test 코드를 실행하고 나면 분명 아무런 문제없이 build 가 성공했는데 outputDir(“src/main/resources/static/docs) 에 html file 이 생기지 않는 문제가 있었다. 이렇게 에러 없이 오히려 아무런 반응이 없는 경우 디버깅이 더 어렵던데 참 걱정이었다.
해당 task 를 직접 터미널에서 했는데 딱히 의미있는 정보를 얻지 못해서
./gradlew generateDocs –info
와 같이 –info 옵션을 추가로 하여 실행했다.
해당 테스크를 gradle 이 up-to-date 로 인식하고 skip 했다는 로그가 있다.
rerun-tasks 옵션
./gradlew generateDocs –info –rerun-tasks
위와 같이 rerun 옵션을 붙여 실행했더니 원하는 대로 html file 들로 잘 변환되는 것을 확인할 수 있었다..!