加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 如何解析和解释ant的build.xml

发布时间:2020-12-15 04:50:47 所属栏目:Java 来源:网络整理
导读:是否有用于读取和ant build.xml并从中检索元素的Ant API?具体来说,我希望能够检索路径元素中的值,并能够遍历路径中的所有元素. 我的目的是检索给定路径并确保在清单中正确引用它,以便在产品投入生产时构建和清单匹配. 编辑:关于使用XML API的响应(并感谢他
是否有用于读取和ant build.xml并从中检索元素的Ant API?具体来说,我希望能够检索路径元素中的值,并能够遍历路径中的所有元素.

我的目的是检索给定路径并确保在清单中正确引用它,以便在产品投入生产时构建和清单匹配.

编辑:关于使用XML API的响应(并感谢他们),问题是当前构建的构建文件比这更复杂.即类路径引用不同的类路径并包含它,并且类路径中引用的元素本身在属性文件中定义,因此有太多的Ant API可以合理地重新创建.

解决方法

您可以使用ProjectHelper类使用构建文件配置项目.如果要检查的路径包含在引用中,则可以通过其ID从项目中获取引用.

例如,如果你在build.xml中有这样的东西:

<path id="classpath">
    <fileset dir="${basedir}/lib" includes="*.jar"/>
</path>

然后,您可以使用以下代码获取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中不推荐使用.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读