clipse部署web项目至本地的tomcat但在webapps中找不到
1、发现问题
在我的 eclipse 中有个Dynamic Web Project(动态web项目),在本地的 tomcat 跑起来以后,浏览器能正常访问,但在tomcat的安装目录下的 webapps 并没有出现项目目录。
我的项目其实由两个项目组成,一个就是现在这个动态web项目(用作后台和部分前台详情页),另外一个是为 Phonegap 准备的前台html(静态页面),以下就用 动态web项目、静态web项目 指代他们。
我想在手机浏览器上调试效果。所以我需要把两个项目一起发布,因为前台后台我都需要。最简单的方式就是在tomcat发布”动态web项目”,然后把”静态web项目”拷贝到”动态web项目”的发布目录。这样我就可以同时调用两个项目了。
但是问题来了,我在tomcat安装目录底下的 webapps(默认的项目发布目录) 里面我没找到”动态web项目”。
浏览器输入本地地址:127.0.0.1:8080 没有出现那只tomcat猫,说明 webapps里面的tomcat自带的项目(tomcat管理/帮助文档等)没有发布。看来是”动态web项目”没有发布在webapps,而是自己找了个地方发布,然而我不知道这个发布目录在那里。
所以”动态web项目”跑起来以后,我的”静态web项目”不知道要放到哪个目录(理论上我需要让两个项目放到同一个发布目录底下,这样我就可以同时访问两个项目)。
于是我去google百度了一下,解决问题以后,我打算写这篇详细点的教程,常受前辈们所写的教程帮助,怎么也不能让互助的精神断在我这里。
2、原因
搜索完发现,之所以我在tomcat安装目录底下的webapps里面找不到”动态web项目”,是因为eclipse默认是把项目部署到工作目录(workspace)下的.metadata.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps,那个tmp0可能有些人会有tmp1什么的,不重要。(另外Myeclipse是默认发布到安装目录下的webapps的,这倒是符合我需求)
在eclipse中,你可以通过以下方法找到你的动态项目具体发布目录。
1、在Console输出窗口旁边有个Servers窗口,点开能看见你的本地tomcat。当然你可能配置过一个或多个tomcat,选择你运行项目的tomcat双击,可以打开该tomcat的配置页面。(如果你之前关掉了Servers窗口,可以通过以下方式再次打开:eclipse顶栏 –》Window –》Show View –》Servers,如果在Show View里面没找到Servers可以点击Show View底下的”Other…” ,在弹出窗口搜索Servers)
2、一切顺利的话,你已经看到tomcat的配置。在Server Locations下你能看到三个单选项:
Use workspace metadata(已勾) //发布在工作空间
Use Tomcat installation //发布在tomcat安装目录
Use custom location //发布在自定义目录
Server path:tomcat安装目录
Deploy path:项目发布具体路径
3、”Deploy path”,就是当前你的 项目发布目录。
3、解决
为了使项目默认部署到 tomcat安装目录下的 webapps中(路径好记一点),我需要在上面的Server Locations中选中第二项,即,发布在tomcat的安装目录。这时候会发现按钮是灰色的,不可选。
因为更改之前需要先清理tomcat环境,步骤如下:
1、停止eclipse内的Tomcat服务器(在Servers窗口,选中你的tomcat,右键,Stop)
2、删除该容器中部署的项目(Servers窗口,选中你的tomcat,左边有个小箭头,点击展开能看见发布在上面的项目,右键项目,Remove(移除),我的显示是英文,中文应该就叫移除吧)
3、清除该容器相关数据(Servers窗口,选中你的tomcat,右键,Clean…)
tada~ 做完这三步,你就发现可以修改上面的Server Locations了:
1、找到servers location,选择第二个(Use Tomcat installation)
2、修改Deploy path为:tomcat安装目录下的webapps
3、ctrl+s保存tomcat配置,关闭文件完成,重跑一下项目就发布到webapps去了。
4、罗嗦
手机要访问电脑端tomcat发布的项目需要跟电脑在同一个可达网络内,我们最简单的就是同一个局域网。
比如我手机跟电脑是接同一个路由器:
电脑ip:192.168.1.175
手机ip:192.168.1.123
tomcat发布端口:8080
手机访问电脑端发布的项目只需要在浏览器输入:192.168.1.175:8080/项目url
当然要路由器允许内网通信,不过一般都是允许的,连不上检查一下设置就好了。