报错:
Could not publish server configuration for Tomcat v6.0 Server at localhost.
Multiple Contexts have a path of "/WebTest".
这个问题本质说这个路径下有多个重名项目,为什么会有多个重名项目,其实一般都是我们删除以前的项目,然后再把它重新导进eclipse时以前的项目删除不彻底造成的,以前的项目在"Servers"里面的"server.xml"文件下的<Context>标签中还有我们以前的应用程序。
使用Tomcat服务器时,在eclipse项目列表中应该有Servers文件夹。打开server.xml配置文件,找到<Host>标签,已经其中的<Context>标签,全部删除<Context>标签即可,反正重新部署web项目的时候,还会生成的。(注意:如果你找的是Tomcat安装目录下conf/server.xml,里边虽然也有<Context>标签,好像改了也是不行的)
<Host appBase="webapps" autoDeploy="true" name="localhost" unpackWARs="true" xmlNamespaceAware="false" xmlValidation="false">
<!-- SingleSignOn valve, share authentication between web applications
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.authenticator.SingleSignOn" />
-->
<!-- Access log processes all example.
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/>
-->
<Context docBase="javaweb_servlet03" path="/WebTest" reloadable="true" source="org.eclipse.jst.jee.server:javaweb_servlet03"/>
</Host>
直接删除每个<Context .../>标签中的内容即可,然后可以尝试重新部署web项目。
调试后,及时清除掉Tomcat环境下的相关的web项目的资源文件,清除掉资源后,server.xml中<Context/>标签的内容就消失了,应该就避免这个问题吧。另外,建议每次只在Tomcat上部署一个web项目。