2013-01-18 2 views
1

어떻게 Ant에서 파일의 동적 목록을 만든 다음 나중에 빌드 프로세스에서 사용할 수 있도록이 목록을 저장할 수 있습니까? 내가 생각하고있는 것은 불변의 Fileset과 같은 것이다. Filelist은 와일드 카드를 허용하지 않으므로 작동하지 않습니다.개미 : 불변의 파일 세트를 만드는 방법?

즉, 생성 된 변경되지 않은 포함/제외 와일드 카드를 기반으로 파일 목록을 만들고 싶습니다. 즉, 포함/제외 규칙을 통과 한 파일이 나중에 더 추가되는 경우에도 초기 파일 세트 결과 (특히 빌드 프로세스의 후반에 삭제)를 유지하려고합니다. 이것이 가능한가?

+0

놀라운 것은 아닌 것처럼 보입니다. 동일한 'refid'를 사용할 때 다른 결과로 연결되는' '을 사용하면 약간의 문제가 발생합니다. –

답변

0

글쎄, 여기에 내가 생각해 낸 것이있다. pathconvert를 사용하여 파일 세트를 등록 정보에 저장하십시오. 그런 다음 빌드에서 나중에 파일을 반복하면서 필요한 모든 작업을 수행합니다. 내 경우에는 그들을 삭제.

<macrodef name="storeBuildState"> 
    <sequential> 
     <fileset dir="${build.dir}" id="current.fileset"> 
      <include name="**/*.jar" /> 
     </fileset> 

     <pathconvert pathsep="," property="current.fileset.prop" refid="current.fileset"/> 
    </sequential> 
</macrodef> 



<macrodef name="deleteStoredBuildState"> 
    <sequential> 
     <for list="${current.fileset.prop}" param="file"> 
      <sequential> 
       <delete file="@{file}" verbose="true" /> 
      </sequential> 
     </for> 
    </sequential> 
</macrodef> 
관련 문제