Tomcat剛啟動,報出端口被占用
問題1:Tomcat剛啟動也就一兩秒的時間,報出端口被占用 java.rmi.server.ExportException: Port already in use: 1099; nested exception is: java.net.BindException: Address already in use: JVM_Bind
idea內正常解決方式
Tomcat自身解決方式
Tomcat啟動一半,報出debugging錯誤
問題2:啟動tomcat進行到一半之后自動停止,報出 Method breakpoints may dramatically show down debugging
解決方式:清除斷點,重新啟動Tomcat
Tomcat啟動一半卡死
問題3:此場景出現在Tomcat的調優部分,自己設置了Tomcat的占用內存,如果內存不夠時 - 就會導致Tomcat在啟動中卡死
解決方式
Tomcat本身的問題擴展
Tomcat catalina.bat腳本分析
MyEclipse+Tomcat發布項目所遇問題
解決:Windows下的安裝配置與使用
Tomcat剛啟動,報出端口被占用
問題1:Tomcat剛啟動也就一兩秒的時間,報出端口被占用 java.rmi.server.ExportException: Port already in use: 1099; nested exception is: java.net.BindException: Address already in use: JVM_Bind
形式 - 1
形式 - 2
idea內正常解決方式
修改jmx port的端口地址(JMX的端口不能和http的端口重合)
Tomcat自身解決方式
1.找出占用1099端口的進程,進入windows命令,查看什么進程占用了1099端口
2.使用命令netstat -aon|findstr 1099 找出占用1099端口的進程
3.然后關閉占用該端口的進程taskkill -f -pid 3756
4.重新啟動Tomcat
5.如有問題可以跳轉這里查看端口被占用方面的知識
Tomcat啟動一半,報出debugging錯誤
問題2:啟動tomcat進行到一半之后自動停止,報出 Method breakpoints may dramatically show down debugging
解決方式:清除斷點,重新啟動Tomcat
Tomcat啟動一半卡死
問題3:此場景出現在Tomcat的調優部分,自己設置了Tomcat的占用內存,如果內存不夠時 - 就會導致Tomcat在啟動中卡死
解決方式
1.找到catalina.bat,因為調優的時候在catalina.bat文件加入了jvm的啟動參數
2. 查看內部是否有 set JAVA_OPTS=-server -Xms1024m -Xmx1024m 配置
3.注釋或刪除這段代碼再次運行tomcat就正常了, rem 是注釋
rem set JAVA_OPTS=-server -Xms1024m -Xmx1024m
Tomcat本身的問題擴展
1、java配置路徑有問題,請配置好jdk路徑,具體參考java路徑的配置吧。
2、項目未添加tomcat驅動,
(一般提示The superclass “javax.servlet.http.HttpServlet” was not found on the Java Build Path屬於這一類)
解決方法:保證已經裝了tomcat的情況下,eclipse中選擇對應項目右鍵build path ->Configure build path -> Java build path->選擇Libraries ->點擊右方Add Library… ->Server Runtime ->選擇自己的tomcat服務器->Finish
3、項目中的web.xml中配置的servlet的名稱寫錯,tomcat無法識別,
(一般控制台提示java.util.concurrent.ExecutionException屬於這種問題)
解決方法:檢查自己配置的servlet名稱和路徑是否正確。
4、端口被占用,一般由於上一次非正常關閉tomcat或eclipse導致,( Port 8080 … is already in use)
解決方法:
①修改端口號(當然不建議這么做) Tomcat根目錄/conf/Server.xml中修改,這里就不提了吧…
②關閉被占用的端口進程→ 到dos窗口(計算機開始里的查找中輸入cmd)→ 輸入 netstat -ano|findstr 8080 (8080是被占用的端口號,哪個被占用輸入哪個)→ 回車后可以看到有正在使用的進程 → 再輸入 taskkill /pid 8080 /f (這里的8080是正在使用的進程信息中最后一個數字編號) → 回車后會顯示已結束進程,然后重新啟動tomcat即可