声明:本博文是jumping_frog原创,转载请注明出处:http://blog.csdn.net/u012217085/article/details/25383693
------------by jumping_frog
通过eclipse创建web项目,然后直接run on server 的话,eclipse会直接将web项目部署到 ../workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/
这一个目录下,这个目录我们找起来很不方便,而且访问也有点问题。
run on server后tomcat是非正常启动的,我们在浏览器中输入http://localhost:8080 ,会发现tomcat并不能正常访问,但是在浏览器中输入某个项目的页面却能访问,
假设我们有一个web项目test,在WebCount下有一个hello.jsp页面,然后我们在浏览器中输入http://localhost:8080/test/hello.jsp
只要在eclipse中run on server 后,这个时候是能访问的。
这就说明tomcat是异常启动的,因为tomcat正常启动后http://localhost:8080肯定是还能访问的,但是为什么异常这我就不知道了,
我们不可能每次要访问web项目的时候,都运行eclipse,然后run on server,这样太不方便了。
所以,在一般情况下,我们都会把项目部署在其他目录下,比如可以是tomcat的安装目录tomcat/webapps下,这样只要启动tomcat,然后在浏览器输入相应的地址就可以了
大家可以在网上找到很多具体的方法,这里我就不说了
虽然上面的方法可行,但是,一般情况下,我们都不把项目直接部署到tomcat的webapps目录下,而是部署到任意你想放的目录,这样能更方便的进行管理。
我曾经在windows下部署过,本想按照原来的方法弄,但是不成功,后来发现linux和windows有一点点地方不同,所以特地在此记录一下。
1. 打开eclipse,这个时候workspace中不要有任何文件,也就是不要新建任何web项目,这一点切记,因为我发现ubuntu下的eclipse中同一个版本的tomcat server只能
new一次,就算delete掉了也不能再new,这一点和我之前在windows下弄的不一样,我觉得很奇怪,不知道是eclipse版本的差异还是怎么回事。
2. 选中下面的servers,在空白处右键new-->server,然后就会打开下面的界面:
看到Server Locations下面有3个选项,如果是还没配置过的话,那3个选项是可以选的,我的已经配置过了,所以不能选了,不想重新配置,所以图片就不改了
第一个就是将项目配置在workspace目录下,就是上面说到的那个长长的eclipse目录
第二个就是将项目配置在tomcat目录下
第三个是自定义,我们要的就是这个
Server path就是项目部署的根目录,如上图,我的目录是/home/frog/development/server
Deploy path就是项目发布的具体目录,我的目录是/home/frog/development/server/webapps
部署完后,run on server,然后项目就会发布在webapps下了,这个时候在server下就会有以下几个文件夹
如果你发布的是项目aa,那么webapps就会有下面的文件夹
3. 但是这个时候还是不能,直接访问web项目,要配置下tomcat安装目录下的server.xml文件
我的tomcat是安装在/usr/local/development/tomcat7,所以输入命令:
sudo vim /usr/local/development/tomcat7/conf/server.xml
如果不行,试多几次 ./shutdown.sh和./start.sh停止和重启tomcat,应该就可以了
实在不行,reboot电脑,再试一试
PS:顺便说下,关于eclipse首次run on server 启动tomcat访问web项目,出现
Could not load the Tomcat server configuration at /Server/Tomcat v7.0 Server at localhost-config.The configuration may be corrupt or incomplete.
这个问题的解决方法:
1.首先eclipse要回复到初始的状态,可以换个workspace或者把原来的删了,重新从压缩包中解压出来
2.从tomcat的安装目录 .../tomcat7/conf中复制以下几个文件到 ../workspace/Servers/Tomcat v7.0 Server at localhost-config目录下
catalina.policy
catalina.properties
context.xml
server.xml
tomcat-users.xml
web.xml
3.cd /workspace/Servers/Tomcat v7.0 Server at localhost-config目录下,给上面那些文件赋予权限:
sudo chmod 777 *
5,再次run on server就行了