一、发现问题
在eclipse中新建Dynamic Web Project,配置好本地的tomcat并写好代码后选择Run on Server,但运行后发现在tomcat的安装目录下的webapps并没有出现所建立的工程名字。
二、验证
很明显项目并没有自动部署到Tomcat的Webapps中而是部署在了别的容器中。在内置浏览器中输入http://localhost:8080/webDemo/login.jsp可正常打开。但在外部浏览器上打开http://localhost:8080时确没有出现所期望的Tomcat画面。
三、原因
eclipse不像MyEclipse默认将项目部署到tomcat安装目录下的webapps中,而默认部署到工作目录下
的.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps中,tmp1文件夹里面存放着该项目的信息。
四、修改
为了使项目默认部署到tomcat安装目录下的webapps中,show view—>servers—>找到需要修改的tomcat—>
①停止eclipse内的Tomcat服务器(右击Tomcat ->stop)
②删除该容器中部署的项目(右击Tomcat ->add and remove)
③清除该容器相关数据(右击Tomcat ->clean)
④打开tomcat的修改界面(open)
双击右击Tomcat即可出现Tomcat的修改页面
⑤找到servers location,选择第二个(User tomcat Installation),修改deploy path为webapps
第一个是use workspace metadata,即部署到:你的工作空间\.metadata\.plugins\org.eclipse.wst.server.core中;
第二个:tomcat installation,即部署到你的tomcat安装路径下,也就是tomcat目录下的webapps文件夹中;
第三个:custom location,即自定义路径;
默认选项为:Use workspace metadata(dose not modify Tomcat installation)
修改选项为:Use Tomcat installation(takes control of Tomcat installation)。
需要说明的是①②③必须操作,否则步骤⑤中的Service Locations会被置灰,无法操作。
如果为灰色无法更改的话,则按照如下步骤:
先把tomcat下的所有項目移除。并右击,clean...之后,将又变为黑色。
⑥Ctrl+s 保存
设置成功,进入愉快的开发。