【问题标题】:Run ANT file within the same workspace JRE在同一工作区 JRE 中运行 ANT 文件
【发布时间】:2017-01-12 00:22:23
【问题描述】:

我想以编程方式运行一个 ANT 文件。我已经使用了下一个代码:

File file = new File("path to file");
Project project = new Project();
project.init();

DefaultLogger logger = new DefaultLogger();
logger.setErrorPrintStream(System.err);
logger.setOutputPrintStream(System.err);
logger.setMessageOutputLevel(Project.MSG_INFO);

project.setProperty("ant.file", file.getAbsolutePath());
project.addBuildListener(logger);
project.fireBuildStarted();

ProjectHelper helper = ProjectHelper.getProjectHelper();
project.addReference("ant.projectHelper", helper);
helper.parse(project, file);
project.executeTarget(project.getDefaultTarget());

但是,当我运行代码时,我得到了以下错误

Problem: failed to create task or type epsilon.emf.register
Cause: The name is undefined.
Action: Check the spelling.
Action: Check that any custom tasks/types have been declared.
Action: Check that any <presetdef>/<macrodef> declarations have taken place.

我几乎可以肯定这个问题的出现是因为使用了单独的 JRE。我需要设置工作区的相同 JRE(就像我们在手动运行 ANT 文件时在环境工具中所做的那样)。 如何以编程方式更改此选项?

【问题讨论】:

    标签: java eclipse ant


    【解决方案1】:

    类路径问题,这是在缺少实现 3rd 方 ANT 任务的 jar 时引发的典型错误。

    检查您的构建文件,看看是否使用了名为“epsilon.emf.register”的任务..

    【讨论】:

      【解决方案2】:

      有关此问题的简要解决方案,请参阅此论坛中提供的答案:

      Run ANT file with Epsilon tasks programatically

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-02-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-06-24
        相关资源
        最近更新 更多