请解释实际需要哪些Eclipse构建器以及如何修复慢速阻塞构建器

时间:2011-06-29 07:44:50

标签: eclipse

我的.project文件中有一些构建器,有些似乎在执行“东西”时阻塞,如果我取消不会影响我运行测试的能力等因为类文件本身已经创建并放在输出中DIR。

  • 我似乎得到了很多可能与OSGI相关的“分析API”。
  • 我似乎也得到了很多等待,而它在第三方罐子里嵌入了一些xml架构。如果我取消这个建设者,它没有任何区别一切仍然有效......我很困惑......

    <buildSpec>
    <buildCommand>
        <name>org.eclipse.jdt.core.javabuilder</name>
        <arguments>
        </arguments>
    </buildCommand>
    <buildCommand>
        <name>org.eclipse.pde.ManifestBuilder</name>
        <arguments>
        </arguments>
    </buildCommand>
    <buildCommand>
        <name>org.eclipse.pde.SchemaBuilder</name>
        <arguments>
        </arguments>
    </buildCommand>
    <buildCommand>
        <name>org.eclipse.pde.api.tools.apiAnalysisBuilder</name>
        <arguments>
        </arguments>
    </buildCommand>
    

网络上是否有任何内容列出了每个构建器的功能,以及如何更好地使用它,而不仅仅是让它们运行并显示错误和内容。

1 个答案:

答案 0 :(得分:1)

我认为你引用的是“API Analysis Builder”,它来自PDE。在Package explorer中选择您的项目,右键单击&gt;属性 - 查找“构建器”并检查此构建器是否存在。

这个构建器只是验证事物,Java代码的编译由'Java Builder'完成,它是一个独立的实体,来自JDT。因此事情是有效的,因为在调用“API Analysis Builder”时已经可以使用已编译的类。

话虽如此,建造者不应该“阻止”。这可能需要一些时间,但不应该阻止。如果它是阻止的,那么您可以按照http://thecoderlounge.blogspot.com/2011/04/debugging-eclipse-builders.html

上的说明尝试进行调试

编辑:回答每个构建器的作用

  • API分析构建器 - 请参阅首选项&gt;插件开发&gt; API错误和警告以及API基准。所有这些选项都控制着此构建器的行为。此构建器报告API兼容性问题,并帮助您对插件进行版本管理(@since标记)。此外,在Java构建器之后,此构建器需要花费大量时间,尤其是在您已定义API基线的情况下(我之前使用上述说明调试了此构建器)

  • Manifest和Schema构建器 - 请参阅首选项&gt;插件开发&gt;编译器。这些选项控制着这两个构建器。我认为架构构建器将验证plugin.xml并报告它的任何问题,类似的Manifest构建器验证manifest.mf。我很确定这两位建筑商不会花太多时间做他们的工作。

现在你需要这些建设者吗?这三个构建器都不是强制执行代码的。但是我认为Manifest和Schema构建器应该在那里,否则你会在运行时看到错误而不是编译时间。如果你想加速Eclipse内部的构建过程,你可以禁用API分析构建器(我有时会这样做),这个构建器的错误/警告与程序行为没有任何关系。此构建器尝试确保您是“良好”的API生产者和API使用者。