Eclipse 內建 XML 編輯器功能有限,XMLBuddy 免費版提供 **DTD 驗證、代碼助手 (Content Assist)、自動下載 DTD、格式化** 等核心功能,Pro 版另支援 Schema/XSLT/RELAX NG。本文記錄安裝、配置、實戰操作與多插件共存切換技巧。
com.objfac.xmleditor_2.0.38 複製至 eclipse/plugins,或用 link 方式安裝。Help → About → Plugin Details 可見 XMLBuddy。Window → Preferences → XMLBuddy:可調整驗證嚴格度、代碼助手觸發延遲、格式化縮進等。
XMLBuddyDemo,建立 web.xml。<web-app>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
</web-app>
web-app_2_3.dtd 快取至 workspace/.metadata/.plugins/com.objfac.xmleditor/.cache/f1(名稱可能為 f1/f2...)。</welcome-file-list> 後,按 Alt+/ 或輸入 <,**代碼助手彈出合法子元素**(如 error-page、servlet、filter 等)。error-page,繼續輔助輸入 error-code、location,完成後:<web-app>
<welcome-file-list>...</welcome-file-list>
<error-page>
<error-code>404</error-code>
<location>/error.jsp</location>
</error-page>
</web-app>
web-app_2_3.dtd 放置本地(如 D:/XML/web-app_2_3.dtd)。<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"file:///D:/XML/web-app_2_3.dtd">
同樣享受代碼助手與驗證。**移除 DOCTYPE 也不影響 Tomcat 部署**(容器不解析 DTD)。
右鍵源碼 → Format,自動縮進、換行,生成整齊 XML。
Window → Preferences → Workbench → File Associations,將 *.xml 預設編輯器改為 XMLBuddy,甚至可指定外部工具(如 XML Spy)。| 維度 | XMLBuddy 免費版 | XMLBuddy Pro | Eclipse WTP (Web Tools Platform) |
|---|---|---|---|
| DTD 支援 | 優秀 | 優秀 | 良好 |
| Schema/XSLT/RELAX NG | 不支援 | 支援 | 支援 |
| 代碼助手/驗證/格式化 | 核心功能全 | 更強 | 整合度高 |
| 價格 | 免費 | 收費 | 免費 (Eclipse 專案) |
**結論**:DTD 為主的專案,XMLBuddy 免費版足夠、輕量、好用。Schema 專案建議直接用 **Eclipse WTP** (當時 1.0M3,現已成熟整合於 Eclipse)。
「XML 太囉嗦,像唐僧念經。實際開發中盡量用 XDoclet 註解生成 XML,減少手寫。但無法避免時,XMLBuddy 是最貼心的拐杖。」