2016-10-15 18 views
1

adoc에서 HTML을 생성하기 위해 Asciidoctor Maven 플러그인을 사용합니다. 아쉽게도 sourceDirectory에 지정된 디렉토리에서 모든 소스 디렉토리를 복사합니다. 이 빈 폴더를 어떻게 제외시킬 수 있습니까?Asciidoctor Maven 플러그인으로 빈 폴더를 제외 할 수있는 방법

<plugin> 
    <groupId>org.asciidoctor</groupId> 
    <artifactId>asciidoctor-maven-plugin</artifactId> 
    <version>1.5.3</version> 
    <executions> 
     <execution> 
      <id>test-id</id> 
      <phase>generate-resources</phase> 
      <goals> 
       <goal>process-asciidoc</goal> 
      </goals> 
      <configuration> 
       <sourceDirectory>mysourcedirectory</sourceDirectory> 
       <sourceDocumentName>Test.adoc</sourceDocumentName> 
       <outputDirectory>${project.build.directory}/outputdir</outputDirectory> 
       <relativeBaseDir>true</relativeBaseDir> 
       <preserveDirectories>true</preserveDirectories> 
       <backend>html</backend> 
      </configuration> 
     </execution> 
    </executions> 
</plugin> 

내 입력 디렉토리는 다음과 같습니다

── mysourcedirectory 
    ├── Test.adoc 
    └── subfolder1 
     ├── doc1.adoc  
     └── doc2.adoc 
asciidoc의 출력은 다음과 같습니다

(subfolder1이 비어 나는 그것을 제외 할) :

── mysourcedirectory 
    ├── Test.adoc 
    └── subfolder1 

에 따르면 Asciidoc (https://github.com/asciidoctor/asciidoctor-maven-plugin#configuration-options)의 문서는 resources 태그로 처리 할 수 ​​있습니다. 나는이 방법을 시도했지만, 제대로 동작하지 않습니다 다음 asciidoctor-maven-plugin

<configuration> 
    <resources> 
     <resource> 
      <includes> 
       <include>**/*.*</include> 
      </includes> 
     </resource> 
    </resources> 
... 
</configuration> 

답변

1

을 빈 디렉토리의 제거를 지원하지 않습니다. 그것에 대해 the issue 144이 있으며 수정을 고려하지 않습니다.

당신은 일을 주위에 할 수있는 Antrun Plugindelete empty directories를 사용하여 아스키 닥터 후 RAN :

<!-- your configuration of Ascii Doctor --> 
<plugin> 
    <groupId>org.asciidoctor</groupId> 
    <artifactId>asciidoctor-maven-plugin</artifactId> 
    <version>1.5.3</version> 
    <!-- rest of your config --> 
</plugin> 
<!-- deleting empty directories in output directory of Ascii Doctor --> 
<plugin> 
    <artifactId>maven-antrun-plugin</artifactId> 
    <version>1.8</version> 
    <executions> 
    <execution> 
     <id>delete-empty-dirs</id> 
     <phase>generate-resources</phase> 
     <goals> 
     <goal>run</goal> 
     </goals> 
     <configuration> 
     <target> 
      <delete includeemptydirs="true"> 
      <fileset dir="${project.build.directory}/generated-docs"> 
       <and> 
       <size value="0" /> 
       <type type="dir" /> 
       </and> 
      </fileset> 
      </delete> 
     </target> 
     </configuration> 
    </execution> 
    </executions> 
</plugin> 

, 당신은 asciidoctor-maven-plugin 후에 선언을 배치 할 수는 Antrun 플러그인 아스키 의사 후에 호출되어 있는지 확인하고, 그것들이 같은 단계에 묶여 있는지 확인하십시오. 위의 예에서 generate-resources을 사용했습니다.