背景在eclipse中新建Dynamic Web Project,配置好本地的tomcat并写好代码后选择Run on Server,但运行后发现在tomcat的安装目录下的webapps并没有出现所建立的工程名字。那么到底部署到哪里去了呢?不是说好的webapps目录是存放应用的目录吗?


影响很明显项目并没有自动部署到Tomcat的Webapps中而是部署在了别的容器中。在内置浏览器中输入http://localhost:8080 /webDemo/login.jsp可正常打开。但在外部浏览器上打开http://localhost:8080时确没有出现所期望的小猫画面。

原因原因eclipse 不像MyEclipse默认将项目部署到tomcat安装目录下的webapps中,而默认部署到工作目录下的.metadata/.plugins /org.eclipse.wst.server.core/tmp1/wtpwebapps中,tmp1文件夹里面存放着该项目的信息。


区别:tomcat下有wtpwebapps文件夹  和  webapps文件夹区别在于

(1)webapps : tomcat默认部署路径

(2)wtpwebapps : eclipse默认部署路径
在tomcat配置文件server.xml下
<Context docBase="TestByHuangyu" path="/TestByHuangyu" reloadable="true" source="org.eclipse.jst.jee.server:TestByHuangyu"/></Host>
就是指向你程序的根目录
path就是访问的程序名

context中的docbase标签属性是自动生成的,eclipse就默认部署到wtpwebapps下,而tomcat则是默认部署到webapps


如果希望每次部署到tomcat中的时候都是在webapps目录下

解决方案:

修改为了使项目默认部署到tomcat安装目录下的webapps中,show view—>servers—>找到需要修改的tomcat—>右击

①停止eclipse内的Tomcat服务器(stop)
②删除该容器中部署的项目(add and remove)
③清除该容器相关数据(clean)
④打开tomcat的修改界面(open)
⑤找到servers location,选择第二个(User tomcat Installation)
⑥修改deploy path为webapps
⑦保存关闭

①②③必须操作,否则下面的步骤会被置灰,无法操作。


Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐