我试图使用 ant 1.8.1 执行 java 编译。由于要求,我必须在循环中编译多个 java 源文件夹(包含 java 文件)。这些文件夹名称将来自属性文件中提到的 java 项目。从循环本身我需要执行java编译。所以我使用了一个宏定义,我在其中传递了 java 源编译所需的所有参数。本质上,我有一个主要的 build.xml 文件,我从中调用 build_Compile.xml(其职责是确定要构建哪些 Java 项目及其相应的源文件夹,并为每个项目执行循环编译)。为了实现这一点,我使用了一个包含宏定义数量的帮助文件 (Helper.xml) 文件中定义的宏定义。
但是,当我执行任务时,我收到一个错误,这意味着没有正确找到 java src 路径(作为参数传递)。我注意到的是构建文件的路径(我所有的 build*.xml 文件所在的位置)被附加在 java src 目录路径之前(作为宏定义中的参数传递)。我打印了传递给看起来符合预期的宏定义的参数。这是我用于 java 源代码编译的片段 -
…………
<javac srcdir="@{srcpath}"
destdir="./Temp/build/classes/"
includeAntRuntime="false"
classpath="${classpath}"
includes="${replacedartefacts}">
</javac>
对不起,故事很长。欣赏任何指针/指南。谢谢。