[Spring Rest Docs] gradle로 Rest Docs 문서 뽑을때 소스를 찾지 못하는 문제 해결
안녕하세요.
오늘은 간단하게 Maven에서 했던 Rest Docs 문서를 뽑는 케이스를 그대로 Gradle로 개발했을 때 발생했던 문제..? 난항..? 점에 대해서 공유해보고자 합니다.
일단 발생한 난항점은 다음과 같았어요.
> Task :asciidoctor NO-SOURCE
느닷없이 이런 메시지가 뜨면서 gradle에서 문서를 뽑아내지 못하는..? 즉, gradle에 등록된 asciidoctor 명령어로 문서를 뽑으면 되는 단계였는데.. 소스를 찾지 못하는 문제였습니다.
왜 소스를 못찾는지에 대해서 검색을 해보니.. Maven 과 Gradle이 엄연히 다른 빌드 툴이라는게 생각이 나가지고 좀 차이점에 대해서 알아보았습니다.(Spring Rest Docs로 문서를 뽑을때의 차이점을 이야기 한겁니다.)
저와 비슷한 케이스가 존재했네요..!
blog.hodory.dev/2019/12/04/spring-rest-docs-with-gradle-not-working-html5/
원인은 스프링 Rest Docs로 API 문서 자동화를 할때,
source가 되는 snipet 파일(http-response.adoc 등의)과 이 snipet 파일로 커스텀한 .adoc 파일을 통해서 전체 문서를 꾸리게 되는데..
제가 맞딱뜨린 문제는 이 커스텀 .adoc 문서를 찾지 못하는 문제.. 즉, 경로가 이상했던 것입니다.
위의 포스팅 본문에 보면
gradle과 maven 의 소스파일 위치가 다르게 표시되요.
gradle은 docs라는 폴더를 한 depth 더 포함하게 되더라구요. 그점을 좀 간과했던 것 같습니다.
따라서 asciidoc 폴더를 다음과 같이 설정해두었더니 정상으로 동작하게 되었습니다.
저와 같은 문제 겪으신 분들의 해결책이 이것이 맞다면 정말 좋겠네요.
감사합니다.