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



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

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

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

(系统找不到指定的路径(。此处的路径还包括文件名。我确认需要创建属性文件的父文件夹存在。

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

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

构建.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 - "测试"目录现已可用 - 预期结果成功

$ 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 

编辑:抱歉没有阅读提到父文件夹存在的部分。对我来说,给定的片段有效(在 Eclipse 中(。您的path变量包含什么以及您确切使用哪种环境?

在 Ant 创建属性文件之前,path变量指定的所有文件夹都必须存在,甚至在执行任何目标之前也是如此。

相关内容

  • 没有找到相关文章

最新更新