debug模式运行时,有以下错误:
一、multiple contexts have a path of "/distribution "
处理方式:
(1)如果采用eclipse的Tomcat插件,则在{eclipse_workspace}\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\conf\server.xml文件
(2)如果是Tomcat单独服务器就需要找Tomcat的安装目录:${Tomcat_home}\apache-tomcat-7.0.47\conf\server.xml
二、Removing obsolete files from server...
Could not clean server of obsolete files: null
原因:Tomcat服务中存在废旧文件无法clean
解决方案:换个干净的Tomcat
三、tomcat server name无法显示
解决方案:
1.打开文件夹{eclipse_workspace}\.metadata\.plugins\org.eclipse.core.runtime\.settings,删除以下2个文件
org.eclipse.wst.server.core.prefs
org.eclipse.jst.server.tomcat.core.prefs
2.重启eclipse,就好了。
四、启动Tomcat报错:Failed to load keystore type JKS with path
原因:启动tomcat时候,加载tomcat的server.xml时候,因之前配置了https加密协议。这个协议要conf的.keystore这个数字证书文件,它找不到conf目录下这个文件,就报错。
解决方案:删除server.xml配置文件中
<Connector SSLEnabled="true" clientAuth="false" keystoreFile="D:\apache-tomcat-7.0.47\tomcat.keystore" keystorePass="123456" maxThreads="150" port="443" protocol="HTTP/1.1" scheme="https" secure="true" sslProtocol="TLS"/>
现象:删除此配置后,重新启动Tomcat后,此配置还原?
根本原因:Tomcat服务器在Eclipse中启动时,会自动发布Eclipse中部署的项目,Eclipse只认得在它里面部署的项目,因此它会创建一个新的server.xml文件覆盖原来的文件,里面只有Eclipse中部署的项目。
方法一:
设置Ecplise,取消掉自动发布功能。
依次选择 Window-Preferences-Server-Launching,取消Automatically publish wen starting servers,点击OK,搞定。
方法二:
Ecplise项目中有一个Server项目,有一个Tomcat v7.0 Server at localhost-config,
里面也有server.xml和content.xml,替换成你修改后的文件。Tomcat重新发布时会用这里的配置文件覆盖Tomcat下的conf下的文件。