1. 程式人生 > >Eclipse中的Web專案自動部署到Tomcat以及如何在Eclipse中使用My Eclipse工程

Eclipse中的Web專案自動部署到Tomcat以及如何在Eclipse中使用My Eclipse工程

我是一個新手學習Java,servlet和Jsp.

痛苦的是我時候一個.net程式設計師,習慣了微軟的VS IDE一切都是封裝好的.傻瓜式的使用, 不需要關心內部實現.

悲催的是我看到資料都是My Eclipse, 但我下載使用的環境是Eclipse.這就有兩個問題要解決.

一個是如何把My Eclipse的東西同步到Eclipse上,

另外一個是版本控制問題.我的環境我覺得比較奇葩(Tomca6.0.45+J2ee1.8.25).

在這個過程中遇到的問題較多,下面就找一個先突破吧.

如何部署Servlet到Tomcat,也可以說是如何debug on server(原始碼在tomcat目錄下)

對於一個新手來說,如何快速定位自己遇到的問題筆記重要,一個辦法是把你看到的問題直接google|baidu.另一個辦法是查看出錯資訊”猜”是哪裡可能出了問題.

當你用Eclipse執行web專案的時候,你就會看到控制檯出現:
WARNING:[SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property'source' to 'org.eclipse.jst.jee.server:myProject' did not find a matchingproperty.
這樣的字樣,說的是server.xml的Service標籤裡的Engine標籤裡的Host標籤裡的Context標籤配置了一個'source'屬性,屬性值是'org.eclipse.jst.jee.server:myProject'.
但問題是Context標籤是不支援source這個屬性的,所以跳出了警告,所以大家也發現的是,儘管有警告,但是大部分人的程式是依然可以執行沒有問題的,但少部分人的不能夠執行。
也許你已經在網上查到很多像這樣的問題,而且也給出瞭解決辦法,但是你照著解決的方法去做了,警告依然存在!
那現在你就可以跟著我的步驟來做了:

解決方法1:

  1. 雙擊Servers裡的Tomcat v6.0 at localhost, 然後跳出個介面;;
  2. 在Server Options選項裡有個Publish module contexts to separate XML files的選項,到這裡我們也一樣把勾勾上如果問題解決,請跳過. 如果問題仍在,請繼續看.
  3. 請大家注意Server Locations, 在Eclipse預設情況是選在第一個”Useworkspace metadata(does not modify Tomcat installation)” . Deploy path= wtpwebapps.而且Eclipse預設會把
    Web專案放到Eclipse的工作空間(work bench)下的.metadata\.plugins\org.eclipse.wst.server.core\tmp0(或者是tmp1)\wtpwebapps\下,如果現在Eclipse中有名為myProject'的專案,將它按以前的方式部署到伺服器上,則會在上邊的目錄下,看到自己的專案了.

修改完成之後,儲存即可。這樣以後的專案都會發布到tomcat下的webapps下了。

注意:

  1. 在Eclipse中,用這種方式釋出Web專案,會將原先伺服器的conf資料夾被分成為backup資料夾,自己新建立一個資料夾,來作為配置Eclipse釋出的Web專案。所以還是要使用MyEclipse編寫JavaWeb專案
  2. 有時候,Server Locations專案下,什麼都不可選擇,你可以先刪除伺服器,重新新增tomcat伺服器,然後右擊開啟,修改即可。

這個時候只是解決了第一個問題, 釋出servlet 到tomcat伺服器. 那麼你若是匯入的My Eclipse檔案將不能很好的工作,至少有一部分不能釋出過去.因為Eclipse預設的web目錄是WebContend,而MyEclipse是WebRoot.所以導致只有WebContent中的內容被髮布到Tomcat中.如何修改它?請看下圖

 

1. 找到工程的.settings 檔案

2. 修改為你想釋出的目錄