无法使用Ant脚本创建属性文件

时间:2014-12-18 07:08:13

标签: ant

我正在尝试使用以下Ant脚本片段创建一个新的Property文件。

<propertyfile file="${path}/sample.properties">
                  <entry  key="k1" value="v1"/>
</propertyfile>

尝试创建属性文件,我收到以下错误

(系统找不到指定的路径)。这里的路径也包含文件名。我确认了存在需要创建属性文件的父文件夹。

2 个答案:

答案 0 :(得分:2)

我使用您的代码段创建了一个构建文件,但是看不到问题。如果path属性指定的目录不存在,则抛出异常,但这似乎是正确的行为。

我建议你添加一些测试来确认path属性的实际值。也许它没有达到你期望的价值。

<强>的build.xml

<project>
<property name="path" value="./test"/>
<propertyfile file="${path}/sample.properties">
                  <entry  key="k1" value="v1"/>
</propertyfile>
</project>

测试用例1 - “测试”目录不存在 - 预期结果失败

$ ls test
ls: cannot access test: No such file or directory
$ ant build.xml
Buildfile: /home/owen/stackoverflow/build.xml
[propertyfile] Creating new property file: /home/owen/stackoverflow/test/sample.properties

BUILD FAILED
/home/owen/stackoverflow/build.xml:3: java.io.FileNotFoundException: /home/owen/stackoverflow/test/sample.properties (No such file or directory)

Total time: 0 seconds

测试案例2 - 'test'目录现已推出 - 预期成果成功

$ mkdir test
$ ant
Buildfile: /home/owen/stackoverflow/build.xml
[propertyfile] Creating new property file: /home/owen/stackoverflow/test/sample.properties

BUILD SUCCESSFUL
Total time: 0 seconds 

答案 1 :(得分:0)

编辑:抱歉没有看到提到父文件夹存在的部分。对我来说,给定的代码片段(在Eclipse中)。您的path变量包含哪些内容以及您使用的环境是什么?

path变量指定的所有文件夹必须存在,然后Ant才能创建属性文件,甚至在执行任何目标之前。