【问题标题】:Eclipse XML Formatting Backend LibrariesEclipse XML 格式化后端库
【发布时间】:2012-09-26 15:24:25
【问题描述】:

我从SuperUser question 提出一个后续问题来帮助 OP,该问题演变成一个编程问题。

正如您在我对那个 SU 问题的回答中的 Eclipse 屏幕截图中看到的那样,Eclipse 具有用于格式化 XML 的强大且可配置的引擎(顺便说一下,我使用的是 Eclipse Juno 版本)。

SU 问题的 OP 选择 Eclipse 的 XML 引擎作为他们整理 XML 的首选方法。不幸的是,OP 更喜欢在命令行上工作,并希望从 Eclipse 的 XML 格式化引擎中捕获相同的功能,并使其作为一个简单的无头程序运行,例如可以从bash.

我知道 Eclipse 是非常模块化和可扩展的,所以我的直觉告诉我 Eclipse 不会将 XML 引擎背后的功能与 UI 紧密结合起来。因此,我认为 Eclipse 中有一些 OSGi 模块仅将 XML 处理例程实现为无头 I/O 接口,而不是耦合到 Eclipse 运行时。如果这个接口依赖于 Eclipse 的其他部分,那很好,只要它不要求启动富客户端平台和 GUI。我正在寻找无头解决方案。

我可以在 Eclipse 堆栈的哪一层访问此接口,以便设计一个命令行程序,该程序本质上接受 XML 文件和格式首选项列表,类似于 Eclipse 首选项窗格中的格式首选项列表(但指定为命令行参数)并生成格式化的 XML 作为输出?

在网上看了一些,我认为Eclipse Juno中的XML源代码编辑器是在WST中实现的,但是我不知道如何分离出与该项目无关或具有GUI功能的WST部分,以便我只能调用实际执行 XML 解析和修改的无头“引擎”类。

这个问题不是关于如何使用相关接口。只是 Eclipse 平台如此庞大,以至于仅仅发现我需要的库接口的存在本身就是一个挑战,因此这个问题。一旦我找到了一个位于该任务的正确抽象级别的 API,我将能够从文档中了解 API 并编写程序而无需更多帮助。

【问题讨论】:

    标签: java eclipse dependencies xml-formatting


    【解决方案1】:

    XML 格式化程序位于“org.eclipse.wst.xml.core”插件中。

    org.eclipse.wst.xml.core.internal.formatter.XMLFormatterFormatProcessor
    

    插件使用扩展点“org.eclipse.wst.sse.core.formatProcessors”使其可用。

    【讨论】:

      猜你喜欢
      • 2010-10-03
      • 2014-02-13
      • 2011-05-30
      • 2023-04-01
      • 1970-01-01
      • 2010-12-13
      • 2012-09-17
      • 1970-01-01
      • 2015-04-10
      相关资源
      最近更新 更多