공부/Spring Boot
Spring REST Docs(3) - Asciidoctor 플러그인 설정 옵션들
오피스엑소더스
2020. 1. 9. 10:51
참고 : https://asciidoctor.org/docs/user-manual/
<!-- maven pom.xml -->
<build>
<plugins>
<!-- for Spring REST Docs -->
<plugin>
<groupId>org.asciidoctor</groupId>
<artifactId>asciidoctor-maven-plugin</artifactId>
<version>1.5.3</version>
<executions>
<execution>
<id>generate-docs</id>
<!-- asciidoctor가 동작하는 시점 정의 -->
<phase>prepare-package</phase>
<goals>
<goal>process-asciidoc</goal>
</goals>
<configuration>
<attributes>
<!-- 기본적으로 asciidoctor가 만들어주는 문서는 html -->
<!-- 굳이 jsp파일로 만들고 싶은 경우 suffix 설정(권장 X) -->
<outfilesuffix>.jsp</outfilesuffix>
<!-- asciidoctor의 기본 인코딩은 utf-8 -->
<encoding>utf-8</encoding>
<!-- 문서 스타일을 설정하고 싶은 경우 -->
<stylesheet>my-theme.css</stylesheet>
</attributes>
<backend>html</backend>
<doctype>book</doctype>
</configuration>
</execution>
</executions>
<!-- asciidoctor-maven-plugin 구성에 종속성 추가 -->
<!-- spring-restdocs-mockmvc 사용하는 경우에는 필요 없음 -->
<dependencies>
<dependency>
<groupId>org.springframework.restdocs</groupId>
<artifactId>spring-restdocs-asciidoctor</artifactId>
<version>2.0.2.RELEASE</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>2.7</version>
<executions>
<execution>
<id>copy-resources</id>
<phase>prepare-package</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>
<!-- .adoc파일들을 토대로 만든 웹문서를 저장할 위치 선택 -->
src/main/webapp/WEB-INF/views/docs
<!-- SpringBoot의 경우 빌드 후에 생성되는 target/classes/static폴더에 직접 접근할 수 있기 때문에 -->
<!-- 아래 경로로 설정하고 웹브라우저 등에서 localhost:8080/docs/index.html URL을 통해 웹문서 열람 가능 -->
<!-- ${project.build.outputDirectory}/static/docs -->
</outputDirectory>
<resources>
<resource>
<directory>
<!-- 웹 문서를 만들 때 사용할 문서조각의 위치 정의 -->
${project.build.directory}/generated-docs
</directory>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>