我的脚本在使用属性值时失败,但在使用文字字符串指定目录路径时却没有。
这失败了:
<target name="build">
<echo>${dir.intermediate}</echo>
<echo>${dir.source}</echo>
<copy todir="${dir.intermediate}" includeEmptyDirs="true">
<dirset dir="${dir.source}" excludes="${file.default.exclude}, ${file.exclude}"/>
</copy>
</target>
这有效:
<target name="build">
<echo>${dir.intermediate}</echo>
<echo>${dir.source}</echo>
<copy todir="${dir.intermediate}" includeEmptyDirs="true">
<dirset dir="/Users/michaelprescott/path" excludes="${file.default.exclude}, ${file.exclude}"/>
</copy>
如果我在属性或文字中指定dir中的绝对路径或相对路径似乎并不重要。
答案 0 :(得分:1)
哇。这是一个非常难以识别的问题。查看属性文件时,路径显示正确。它在echo语句中显得正确。从ant失败消息复制并将其粘贴到'ls'时,它甚至看起来是正确的。最后,我注意到目录字符串后面有一个空格。
在属性文件中,它是:
"./path "
将其更改为以下修正:
"./path"