是否有用于读取和ant build.xml并从中检索元素的Ant API?具体来说,我希望能够检索路径元素中的值,并能够遍历路径中的所有元素.
我的目的是检索给定路径并确保在清单中正确引用它,以便在产品投入生产时构建和清单匹配.
编辑:关于使用XML API的响应(并感谢他们),问题是当前构建的构建文件比这更复杂.即类路径引用不同的类路径并包含它,并且类路径中引用的元素本身在属性文件中定义,因此有太多的Ant API可以合理地重新创建.
解决方法:
您可以使用ProjectHelper类使用构建文件配置项目.如果要检查的路径包含在引用中,则可以通过其ID从项目中获取引用.
例如,如果你在build.xml中有这样的东西:
然后,您可以使用以下代码获取Path引用:
import java.io.File;
import org.apache.tools.ant.Project;
import org.apache.tools.ant.ProjectHelper;
import org.apache.tools.ant.types.Path;
public class Test {
public static void main(String[] args) throws Exception {
Project project = new Project();
File buildFile = new File("build.xml");
project.init();
ProjectHelper.configureProject(project, buildFile);
Path path = (Path) project.getReference("classpath");
}
}
请注意,ProjectHelper.configureProject在ant 1.6.2中已弃用,但在1.7中不推荐使用.
标签:java,build,classpath,ant
来源: https://codeday.me/bug/20190716/1473437.html