2012-10-24 3 views
2

여러 서브 프로젝트의 집합 인 Maven 프로젝트가 있습니다. 이 프로젝트는 maven javadoc 플러그인을 사용하여 모든 하위 프로젝트 javadocs를 target/ 폴더의 단일 디렉토리로 집계합니다. target/ 폴더에 javadoc 페이지를 유지하고 싶은 추가 파일이 있습니다. 그러나 clean을 실행할 때마다이 파일이 삭제됩니다. 전체 대상 디렉토리를 삭제하고 하나의 파일 만 남기는 방법이 있는지 궁금합니다. Maven 클린 단일 파일 무시

<plugin> 
    <artifactId>maven-clean-plugin</artifactId> 
    <execution> 
     <executions> 
     <id>default-clean</id> 
     <configuration> 
      <excludeDefaultDirectories>true</excludeDefaultDirectories> 
      <filesets> 
       <fileset> 
       <directory>target</directory> 
       <excludes> 
        <exclude>path/to/myFile.xml</exclude> 
       </excludes> 
       <followSymlinks>false</followSymlinks> 
       <fileset> 
      </filesets> 
     </configuration> 
     <phase>initialize</phase> 
     <goals> 
     <goal>clean</goal> 
     </goals> 
    </execution> 
    </executions> 
</plugin> 

내가 비슷한 질문 here을 보았지만,이 솔루션은 나를 위해 작동하지 않는 것 : 내 플러그인은 현재과 같이 구성되어 있습니다.

+0

? 생성 또는 무엇? – khmarbaise

+0

보조 파일은 정적이며 target/path/to/myFile.xml 디렉토리에 있습니다. 생성 된 html을 보완하므로 복사하지 않고 HTML 만 사용하면됩니다. 이 프로젝트가 집계가 아닌 경우 src 폴더에 넣고 복사 할 수 있지만 집계이므로 집에 넣을 수있는 유일한 장소라고 생각했습니다. – JoshC13

답변

1

리소스 폴더에 정적 파일을 넣고 maven-resources-plugin이 특정 대상 폴더로 복사되도록합니다.

+0

깨끗한 플러그인이 파일을 제외하는 간단한 방법이 없다는 것이 이상한 일이라고 생각하지만, 그렇게 할 수 있습니다! – JoshC13

+0

@ Joshc1107하지만 ​​청소를 원한다면 먼지를 남기고 싶습니까? – SpaceTrucker

0

명시 적으로 프로젝트에서 파일을 명시 적으로 제외하거나 포함 할 수 있습니다. 당신이 제공 한 제외 경로에 대해 긍정적입니까?

<filesets> 
    <fileset> 
    <directory>src/main/generated</directory> 
    <followSymlinks>false</followSymlinks> 
    <useDefaultExcludes>true</useDefaultExcludes> 
    <includes> 
     <include>*.java</include> 
    </includes> 
    <excludes> 
     <exclude>MyPathRelativeToDirectoryTag/myFile.xml</exclude> 
    </excludes> 
    </fileset> 
</filesets> 
0

나는 동일한 필요성을 가지고 있으며 플러그인을 사용하여 잠시 재생 한 후에 대상 폴더 내의 특정 파일을 삭제하지 않는 해결책을 찾았습니다.

이의 당신이 target 폴더에있는 파일 do_not_delete을 삭제하지 않을 것을 가정하자,이 구성은 나를 위해 작동 : 어디이 추가 파일에서오고

<plugin> 
    <artifactId>maven-clean-plugin</artifactId> 
    <version>3.0.0</version> 
    <configuration> 
     <excludeDefaultDirectories>true</excludeDefaultDirectories> 
     <filesets> 
      <fileset> 
       <directory>target</directory> 
       <followSymlinks>false</followSymlinks> 
       <useDefaultExcludes>false</useDefaultExcludes> 
       <excludes> 
        <exclude>do_not_delete</exclude> 
       </excludes> 
      </fileset> 
     </filesets> 
    </configuration> 
</plugin>