java - Eclipse XML 格式化后端库

标签 java eclipse dependencies xml-formatting

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

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

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

我知道 Eclipse 具有极高的模块化性和可扩展性,因此我的直觉告诉我,Eclipse 不会将 XML 引擎背后的功能与 UI 紧密结合起来。因此,我认为 Eclipse 中有一些 OSGi 模块仅将 XML 处理例程实现为 headless I/O 接口(interface),而不是耦合到 Eclipse 运行时。如果此界面依赖于 Eclipse 的其他部分,那也完全没问题,只要它不强制启动富客户端平台和 GUI。我正在寻找 headless 解决方案。

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

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

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

最佳答案

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

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

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

关于java - Eclipse XML 格式化后端库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12605159/

相关文章:

java - 类型转换仅适用于保存到数据库,不适用于显示

java httpurlconnection "failed to read: line to long:"

java - Android GridView 重绘问题

java - 未找到 GetSherlockActivity

spring - Grails 从依赖项中排除 jar

java - Astyanax 无法读取某些列族

java - Eclipse java web项目手动设置WEB-INF中的lib文件夹

java - 面向 Web 开发人员的 Eclipse Java EE IDE 中的 PrimeFaces

module - OCaml 中的好友模块

python - (重新)使用 PIP 检查依赖关系