1. 程式人生 > >eclipse tomcat熱部署配置

eclipse tomcat熱部署配置

原文地址:http://www.mkyong.com/eclipse/how-to-configure-hot-deploy-in-eclipse/

在本教程中,我們將向你展示如何配置熱部署來支援eclipse的debugger。動態的更改程式碼或配置都不需要重新啟動伺服器,幫助我們更快速的開發。

環境:

  1. Eclipse 4.4 (舊版本也行)
  2. eclipse tomcat外掛

1、熱部署例項

來看一個簡單的熱部署例項-->改變程式碼不需要重啟tomcat服務,假設一個簡單的Spring MVC web專案通過Eclipse-Tomcat外掛部署

   1.1 原始碼

@Controller
public class TaskController {
 
	@RequestMapping(value = "/task", method = RequestMethod.GET)
	public ModelAndView index() {
 
		logger.debug("index()");
 
		ModelAndView model = new ModelAndView();
		model.setViewName("index");
		return model;
 
	}

訪問: http://localhost:8080/project/task

//output
DEBUG c.m.o.web.controller.TaskController - index()

   1.2 改變程式碼-->列印不一樣的資料

@Controller
public class TaskController {
 
	@RequestMapping(value = "/task", method = RequestMethod.GET)
	public ModelAndView index() {
 
		logger.debug("index() - NEW - NO RESTART");
 
		ModelAndView model = new ModelAndView();
		model.setViewName("index");
		return model;
 
	}
再次訪問: http://localhost:8080/project/task
//output
DEBUG c.m.o.web.controller.TaskController - index() - NEW - NO RESTART

2、在Eclipse中配置tomcat熱部署
  2.1 雙擊tomcat外掛,選擇"publishing"選項,確保“Automatically publish when resources change” 是被選中的,這應該是預設選項,以支援“熱部署”資源,例如:JSP、XML和屬性檔案等。

eclipse-tomcat-hot-example1

eclipse-tomcat-hot-deploy-example2

  2.2 在tomcat外掛頁面,選擇“Module”檢視,確保“Auto Reload”是“Disabled”,預設是enabled。

  eclipse-tomcat-hot-deploy-example3

   2.3在除錯(debug)模式下啟動專案,熱部署已經在除錯模式下被支援了。

3、列外

 熱部署支援方法實現的程式碼更改。如果你新增一個新的類或一個新的方法,仍然需要重啟。

不行你可以試試,試著新新增一個方法,之後將彈出提示顯示,說在虛擬機器(JVM)中不能動態更改改變的程式碼,提示你是繼續,還是重啟以確保新的程式碼實現可用。

eclipse-hot-swap-failed


完。