0

我是蚂蚁的新手。以下是我的应用程序的文件夹结构。

  • src:源代码
  • 库:罐子
  • util : build.xml (ant 构建文件)
  • 输出:这将有一个从源代码生成的 jar 文件

用户应该能够将输出文件夹中的这个 jar 文件复制到任何地方,并且在提取时它将具有

  • lib 文件夹:包含所有需要的库
  • build.xml :要运行的 ant 构建文件

用户应该能够将此 build.xml 运行为“ant -f build.xml run”

问题是,在代码结构中 build.xml 在输出文件夹下,所以当我编写 build.xml 时,lib 文件夹路径设置为 ../lib/ 但是当 build.xml 从提取的文件夹运行时,build.xml 位于根级别,../lib 将不起作用,因为 lib 的相对路径是“./lib/”

帮助表示赞赏!

谢谢

4

2 回答 2

1

尝试将 build.xml 放在 util 文件夹之外..或将 util/ 添加到输出列表 output.library.jar = bin/,\util/ 在 build.properties 文件中

于 2012-11-01T18:11:05.217 回答
0

使 lib 目录动态,从属性文件加载。在属性文件local.props(将被打包到根目录下的 jar 中)中,您将拥有:

lib.dir=lib

当在目录中时,您还将有另一个local.props用于构建过程的文件。该文件将具有:build.xmlutil

lib.dir=../lib

构建文件中的第一个指令必须是:

<property file="local.props" />

引用 lib 目录时,请始终使用${lib.dir}. 这将使 lib 目录不仅灵活,而且可以在用户端进行配置,作为副作用。local.props文件通常用于为脚本用户提供可配置性。

于 2012-11-01T19:43:08.657 回答