Hyperic HQ 4.6 開發環境搭建避坑全記錄:Maven 2.x、Javadoc 跳過、依賴調整、IDE 配置
背景
任務:修復 HQ 4.6 升級 SNMP 3.0 後的 Bug。從 GitLab clone 代碼,開始填坑之旅。
Maven 構建坑點彙總
| 坑點 | 現象 | 解決方案 |
| Maven 版本 | 3.x 構建失敗 | 必須用 Maven 2.2.x |
| Javadoc 報錯 | 大量不規範註釋導致編譯失敗 | -Dmaven.javadoc.skip=true |
| hq-pdk 依賴 javadoc | assembly.xml/pom.xml 引用 javadoc jar 導致失敗 | 移除對 hq-pdk:javadoc 的依賴 |
| PluginXmlValidator 編譯錯誤 | 找不到 log4j 方法 | 暫時註釋該行代碼(第 185 行) |
| maven-eclipse-plugin 失敗 | hq-rendit 模塊報錯 | 註釋掉該 plugin 配置 |
| 編譯版本不一致 | hq-server 模塊 | 加入 maven-compiler-plugin 強制 1.6 |
最終可構建命令
mvn clean compile install \
-Dmaven.javadoc.skip=true \
-DCI-build \
-Dall-installers \
-Dmaven.test.skip=true \
-e
代碼修改對比截圖
assembly.xml:移除 javadoc 依賴;
pom.xml (hq-pdk):同理;
PluginXmlValidator.java:註釋 185 行;
pom.xml (hq-rendit):註釋 maven-eclipse-plugin;
pom.xml (hq-server):新增 compiler plugin 1.6。
後續:運行 hq-web 遇到的深坑
構建成功只是開始,IDEA 運行 hq-web 還有 Tomcat 配置、數據庫初始化、端口衝突、類加載順序等一系列坑,待後續補充。
心得
- 老項目常綁定舊版 Maven,切換版本工具
jenv/sdkman 必備;
-Dmaven.javadoc.skip=true 是救命稻草;
- 遇到編譯錯誤先看是否可「暫時繞過」而非硬改邏輯;
- 記錄每一步修改,方便回滾與團隊同步。
- 上一篇文章: Eclipse Git 實戰:核心概念差異、常用操作與團隊協作避坑指南
- 下一篇文章: Spring Framework 核心 JAR 包功能清單與依賴關系全覽
Copyright ©
程式碼之家 All Rights Reserved