今日在tomcat下開發,為避免在沒有改變java方法和類名的情況下重新加載整個webapp,查閱了些資料后需要啟用jvm的jpda, 同時要能遠程debug;
研究了半天發現其實很簡單,人家已經做的很好了;只需要加jpda 4個字母就可以了;
修改startup.bat 找到call "%EXECUTABLE%" start %CMD_LINE_ARGS% 改為call "%EXECUTABLE%" jpda start %CMD_LINE_ARGS% 即可;這樣在java的方法里面修改代碼就不需要費時費力的重新加載上下文,也不需要重新登錄。
如果需要修改debug端口,(默認8000),改catalina.bat 中set JPDA_ADDRESS=8000 處;
啟動命令方式如下:
echo Usage: catalina ( commands ... )
echo commands:
echo debug Start Catalina in a debugger
echo debug -security Debug Catalina with a security manager
echo jpda start Start Catalina under JPDA debugger
echo run Start Catalina in the current window
echo run -security Start in the current window with security manager
echo start Start Catalina in a separate window
echo start -security Start in a separate window with security manager
echo stop Stop Catalina
echo version What version of tomcat are you running?
研究了半天發現其實很簡單,人家已經做的很好了;只需要加jpda 4個字母就可以了;
修改startup.bat 找到call "%EXECUTABLE%" start %CMD_LINE_ARGS% 改為call "%EXECUTABLE%" jpda start %CMD_LINE_ARGS% 即可;這樣在java的方法里面修改代碼就不需要費時費力的重新加載上下文,也不需要重新登錄。
如果需要修改debug端口,(默認8000),改catalina.bat 中set JPDA_ADDRESS=8000 處;
啟動命令方式如下:
echo Usage: catalina ( commands ... )
echo commands:
echo debug Start Catalina in a debugger
echo debug -security Debug Catalina with a security manager
echo jpda start Start Catalina under JPDA debugger
echo run Start Catalina in the current window
echo run -security Start in the current window with security manager
echo start Start Catalina in a separate window
echo start -security Start in a separate window with security manager
echo stop Stop Catalina
echo version What version of tomcat are you running?