針對剛遇到的tomcat單獨啟動成功,但是在eclipse啟動tomcat就報錯問題作出總結如下:
軟件版本:
1. eclipse版本
① Luna Service Release 2(4.4.2) 64位
② Helios Service Release 2 64位
2. tomcat版本
①apache-tomcat-6.0.14
②apache-tomcat-6.0.35
3. JDK版本
jdk1.6.0_45 64位
錯誤詳情:
1. tomcat啟動失敗,錯誤提示:
java.lang.ClassNotFoundException: org.apache.catalina.startup.Bootstrap
2. 換另外一個版本的Eclipse啟動報錯:
端口8005,8080,8009被占用,在這里要補充說明一下,我檢查了任務管理器,沒有多余的進程,也沒有發現使用這幾個端口的應用
錯誤排查過程:
1. 首先檢查jdk環境變量 (沒問題)
2. eclipse版本和jdk版本是否匹配 (都是64位沒有問題)
3. 從外部單獨啟動tomcat服務 (沒問題)
4. 重啟網關 (重啟后還是報相同的錯誤,所以排除)
5. tomcat服務配置CLasspath->User Entries下bootstrap.jar包引用 (沒問題)
6. 創建tomcat服務選擇的tomcat版本和使用的tomcat版本是否匹配 (沒問題)
最終解決成功方案:
在網上找了各種eclipse啟動tomcat報錯問題,什么端口被占用,找不到主類,都試過但是都沒有解決,最后我就把從問題的最根源部分分析
1. 首先,eclipse、jdk、tomcat全部用純凈版的(即從壓縮包解壓出來,之前都沒有用過)
2. 環境變量刪除重建
3. 重建工作空間
4. eclipse重新引用jdk、jre,重新配置tomcat服務
再次啟動tomcat居然就成功了,當時覺得很神奇,困擾了幾天的環境問題就這樣解決了,仔細分析后發現,出現這樣錯誤是因為我不同版本的eclipse的工作空間都指向了一個目錄,導致發生版本沖突,低版本的eclipse跟高版本的不能使用同一個工作空間,至此問題終於解決,特記錄於此。