java打包后发布找不到jsp_eclipse中web项目部署以后jsp的java文件找不到问题(Tomcat配置serverlocations)...
我的開發(fā)環(huán)境:eclipse kepler (4.3)+tomcat7.0.42.
在我想看eclipse中web項目jsp文件被tomcat轉(zhuǎn)換成java以后的java源文件的位置,發(fā)現(xiàn)正常情況下的webapps以下,沒有看到我部署的項目
同一時候,work文件夾(jsp的工作文件夾)以下也沒有生成相關(guān)的jsp的class文件和java源文件。可是我想看源代碼啊。找了一堆關(guān)于jsp的源代碼位置的文章,都說是在work以下能夠找到。后來在不斷的嘗試下,我搜索了keyword server locations的配置是什么意思。找了以下的資料,加上了自己的一些補充和驗證,攻克了上述問題。
首先看一下,資料內(nèi)容。
配置eclipse的開發(fā)環(huán)境,配置jdk的安裝路徑和tomcat安裝路徑。在eclipse下建立Dynamic Web Projectprojectzhgy,在使用eclipse中new一個tomcat,通過啟動該tomcat來公布Dynamic Web Project的時候,事實上并未將project公布到tomcat安裝文件夾所在的webapps下。這點能夠去上述的tomcat安裝文件夾的webapps文件夾下查看。從啟動時候的控制臺輸出來看項目是被公布到了例如以下的文件夾:
信息: Set web app root system property: 'webapp.root' =[D:\workSpace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\zhgy\]
打開該文件夾能夠非常清楚的看到存在zhgy這樣一個文件夾,這就是我們?nèi)缃衲軌蛟L問的項目文件夾。
再打開D:\workSpace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\這個文件夾,能夠看到這個文件夾下的結(jié)構(gòu)和D:\Tomcat
7.0的文件夾結(jié)構(gòu)是一模一樣的,僅僅是多了個wtpwebapps文件夾。事實上D:\workSpace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\這個文件夾就是eclipse的對D:\Tomcat
7.0文件夾的一個克隆,從而使D:\workSpace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\也可以具備源服務(wù)器的功能。
假設(shè)再new幾個server,就會在D:\workSpace\.metadata\.plugins\org.eclipse.wst.server.core\文件夾下依次出現(xiàn)temp0、temp1、temp2等多個克隆server,可是這里每次僅僅能啟動上面一個克隆server,由于他們都使用的是同樣的啟動port(當然還有同樣的關(guān)閉port等)。
這樣會給我們帶來非常多的不方便。舉個樣例:就上述project而言,當我們在進行開發(fā)的時候,項目須要將上傳的圖片放入到project的同級文件夾的upload文件夾的時候,會發(fā)現(xiàn)圖片是上傳到了所在的文件夾D:\workSpace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\upload\,可是無法在瀏覽器中訪問到上傳的圖片。這時候我們能夠手動將該upload文件夾整個拷貝到D:\workSpace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\webapps\,這時在瀏覽器中的確就能夠訪問了。造成這樣的現(xiàn)象的原因是tomcat服務(wù)器默認webapps為project文件夾,而不是wtpwebapps文件夾。之所能夠通過瀏覽器訪問D:\workSpace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\zhgy\下的zhgy這個項目,是因為eclipse通過tomcat公布項目的時候在D:\workSpace-jx\.metadata\.plugins\org.eclipse.wst.server.core\tmp3\conf文件夾的server.xml文件里有例如以下的設(shè)置:
實際上,以下的配置是tomcat管理其它文件夾下的web項目的配置方式.在我的博文中tomcat虛擬路徑的配置中有介紹.
(以上部分來源于百度空間)
##########################################################################
通過上面的驗證,就應(yīng)該明確了,為何myeclipse以下部署的項目的jsp文件的java文件會在E:\DevelopSoftware\apache-tomcat-7.0.42\work\Catalina\localhost文件夾下找到了.
由于默認情況下,在eclipse中部署了外部的tomcat時,默認的serverlocations是這樣設(shè)置的:
打開此視圖的的方式是:雙擊server就ok了,不會的多試一下的啦.不做具體介紹.
普通情況下,上面的面板打開以后,server locations是灰色的.
做例如以下操作:首先移除全部已經(jīng)部署的項目,然后右擊servlet->clean一下,就ok了.
那么上面能夠看到server locations配置的三個選項.
1.使用workspace,不改動tomcat,并且發(fā)現(xiàn)部署的文件夾也不是webapps.
這樣的情形下,要想找到j(luò)sp被tomcat轉(zhuǎn)換成的java文件,就須要到上文中提到的文件夾以下去找了.詳細路徑例如以下:
D:\workSpace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\webapps\?work\jsp
(找個文件夾找起來當然不太方便,由于plugins以下類似的文件夾非常多的啦)
2.使用tomcat的安裝文件夾.
選擇第二選項后,server path也會自己主動改動,然后手動改動部署路徑就ok了.
也就是將deploy path改成webapps
3.第三種使用定制的文件夾,實際上就是自定義tomcat server 的location嗎。一般不使用。
了解了上述三種location配置,那么我們要將web項目手動配置到tomcat的安裝文件夾下,就非常easy了。
同一時候做了這種配置以后,以后要想看jsp的源代碼,也就直接在tomcat的安裝文件夾下的work文件夾中就能夠找了。
于是,部署過的項目就能夠找到j(luò)sp的源代碼了.
E:\DevelopSoftware\apache-tomcat-7.0.42\work\Catalina\localhost\myDay11login\org\apache\jsp
tomcat配置虛擬路徑管理其他文件夾下的web項目
總結(jié)
以上是生活随笔為你收集整理的java打包后发布找不到jsp_eclipse中web项目部署以后jsp的java文件找不到问题(Tomcat配置serverlocations)...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mywebsql java版_MyWeb
- 下一篇: java 队列的数组_JAVA-循环数组