2011-08-11 2 views
1

속성 파일에 정의 된 값을 반복하는 데 문제가 있습니다. jar 파일을 루프에서 읽고 디렉토리에 복사하려고합니다. jar 파일 이름은 특성 파일에 정의됩니다.개미의 속성 파일에서 값을 반복하는 데 문제가 있습니까?

<?xml version="1.0"?><project name="beehive" basedir="."> 

<taskdef resource="net/sf/antcontrib/antlib.xml"/> 

<loadfile property="file.list" srcFile="test.txt"> 
    <!--<filterchain> 
     <striplinebreaks/> 
    </filterchain>--> 
</loadfile> 

<target name="testtarget"> 
    <for list="${file.list}" param="fileName"> 
     <sequential> 
      <echo>@{fileName}</echo> 
      <copy file="C:/Development/Doc/Build/@{fileName}" todir="C:/Development/Doc/Build/testdir"> 
      </copy> 
     </sequential> 
    </for> 
</target> 

가 여기에있는 test.txt의 항목입니다 : 여기 내 샘플 파일입니다.

wikihelp-1.0.0.jar

속도-1.0.0.jar 내가 for 루프는 다음 복사를 수행 한 번에 파일 이름을 읽을 것을 기대하고 있습니다

. 대신에 두 개의 파일 이름을 함께 읽고 다음 예외를 던집니다.

경고 : 복사 할 C : \ Development \ Doc \ Build \ wikihelp-1.0.0.jar velocity-1.0.0.jar 파일을 찾을 수 없습니다. .

모든 포인터가 제공됩니다.

  • 감사
+0

** delimiter = "$ {line.separator **}가 해결책을 찾았습니다. – Shamik

+0

퀘스트에 솔루션을 편집했습니다. 이온 그래서 더 이상 이해가되지 않습니다. 목록에서 이것은 답이없는 질문처럼 보입니다. 왜 원래 코드를 되돌리고, 아래에 답변을 추가 한 다음 동의합니까? –

+0

@martin clayton .. 그것을 가리켜 주셔서 감사합니다. 저는 변경 사항을 작성하고 답변을 질문으로 표시했습니다. – Shamik

답변

4

구분 = "$을 추가, 문제 발견 {line.separator에}는 그것을 for 루프에서

해결, I 라인 구분자

에 대한 분리 문자를 추가하는 데 필요한
<for list="${file.list}" param="fileName" delimiter="${line.separator}"> 
관련 문제