eclipse和myeclipse的部署web專案到tomcat的區別
一、myeclipse之web專案的部署(釋出)流程
web專案的部署(釋出)流程2008-01-18 14:35
在myeclipse下新建web工程abc。系統設定預設如下:
專案儲存位置:workspace目錄\abc
Source資料夾:src,儲存所有的java類檔案(.java檔案)和xml檔案。
Web root資料夾:WebRoot,儲存所有的jsp檔案,包括css、javascript等。其中包含的WEB-INF資料夾有很重要的作用!
Context root URL:/abc。 /號指向上一層, /abc指向本目錄。
專案資料夾中包含共計6個檔案和資料夾:
.myeclipse資料夾
src資料夾
WebRoot資料夾
同級包含的檔案:
.classpath檔案
.mymetadata檔案
.project檔案
在myeclipse裡部署(deploy)專案
以專案名稱abc為例,釋出的位置預設為Tomcat安裝目錄下的webapps目錄下abc目錄。
一般認為:Tomcat\webapps\abc目錄下就是完全拷貝myeclipse\workspace\abc\WebRoot\裡面全部內容。
部署的過程就是把myeclipse的WebRoot裡面的內容複製到Tomcat的Webapps\abc下,然後重新啟動Tomcat。
WebRoot目錄裡包含index.jsp
使用者訪問web時輸入http://localhost:8080/abc即指向Tomcat\webapps\abc目錄下的index.jsp
可以正常訪問!
WebRoot的組成:
WebRoot\WEB-INF\classes目錄很有意思!
workspace\abc\WebRoot\WEB-INF\classes目錄與workspace\abc\src目錄一一對應!編譯之後的所有.class檔案儲存在此處,部署也只會對外公開位元組碼,java類檔案仍然保留在開發平臺裡。
src目錄下為java類檔案(.java)
classes目錄下為位元組碼檔案(.class)
C:\AAAA\i_sales\src和C:\AAAA\i_sales\WebRoot\WEB-INF\classes
裡面的結構是一模一樣的,檔名完全相同。只是把所有的副檔名.java變為了.class。
總結:
1、WebRoot資料夾是可以對外的成品!拷貝給Tomcat承載即可。
2、src目錄裡都是重量級的java程式,編譯之後會被放入WebRoot。
3、jsp頁面、javascript、css直接寫在WebRoot裡。自行組織一下目錄結構,易於分類管理。
二、eclipse之web專案的部署
…Tomcat\conf\Catalina\localhost\tracker.xml
在…\localhost目錄下建立專案路徑檔案tracker.xml,內空如上.
.path中的值”/tracker”與檔名tracker.xml要一致.
.docBase是你的頁面檔案的根目錄.
.workDir是jsp檔案編譯成java檔案後java檔案存放的地址.
三、總結
Myeclipse釋出web工程時,會將工程釋出到tomcat資料夾下的webapps資料夾下。
而eclipse釋出web工程時,它預設不是釋出在tomcat下面的,所以在tomcat資料夾下的webapps裡沒有相應的工程。其實eclipse有自己的tomcat配置檔案server.xml,其中定義了工程釋出的位置,不是在webapps下,這其中的原理跟tomcat的虛擬路徑類似。
比如:我現在在本機上釋出釋出一個web工程,它的預設釋出路徑應該是:E:\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp11
最後面的temp11就是自己生成的一個資料夾用於存放釋出的工程。在裡面我們可以找到一個conf資料夾,裡面存放的配置檔案和tomcat下面的類似。
我們要更改tomcat服務的埠的話,我們需要到釋出目錄下的server.xml中去更改。很顯然,如果我們使用的是myeclipse的話,我們只需要到tomcat的安裝目錄下去更改server.xml裡面的埠就可以了。而如果我們使用的是eclipse的話,由於它預設不是釋出在tomcat下面,而是自己又重新生成了新的配置檔案指定了埠,所以此時如果我們修改tomcat安裝目錄下的server.xml中的埠的話,不會有任何作用,我們需要到類似於E:\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp11路徑下面去找到conf資料夾下的server.xml來進行修改,這個路徑可以在工程釋出時在eclipse的控制檯中找到。