【发布时间】:2011-08-11 20:43:04
【问题描述】:
我在尝试迭代属性文件中定义的值时遇到问题。我正在尝试循环读取 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 循环一次读取一个文件名,然后执行复制。相反,它一起读取 2 个文件名并抛出以下异常:
警告:找不到要复制的文件 C:\Development\Doc\Build\wikihelp-1.0.0.jar velocity-1.0.0.jar。
任何指针将不胜感激。
- 谢谢
【问题讨论】:
-
发现问题,添加delimiter="${line.separator}解决了
-
您将解决方案编辑到问题中,因此不再有意义。在列表中,这看起来像是一个悬而未决的问题。为什么不放回原来的代码,然后在下面添加一个答案,然后接受呢?
-
@martin Clayton .. 感谢您的指点,我已做出更改并将问题标记为已回答
标签: ant ant-contrib