警告: [SetPropertiesRule]{Server/Service/Engine/Host/Context}Setting property ‘source’ to ‘org.eclipse.jst.jee.server:aa’ did not find amatching property-
-
今天导入一个ssm项目,启动项目,servers提示上面的警告,并且所有的jsp页面不能访问
-
解决方案
- 方法一
- 异常原因
默认情况下,server.xml的 Context元素不支持名称为source的属性。 - 解决方法:
关闭tomcat;
双击eclipse下tomcat服务器;
在出来的Tomcat server at localhost页面中找到server options选项;
选中Sever Options中的 ”Publish modual contexts to separat XML files“
ctr+s后再启动tomcat。
- 方法二
我们知道,eclipse下配置好tomcat服务器后,会一个Servers工程,如下:-
这些配置文件与tomcat服务器的conf文件夹下的配置文件的内容是一样的,但是当我们部署web应用时,配置信息会写在这些配置文件上,而不会写在tomcat的conf文件夹下的配置文件中,这些配置文件在eclipse的workspace文件夹的Server工程文件夹下:
-
打开Servers工程下的server.xml,会发现,每部署一个web应用到tomcat服务器上就会产生一个描述单web应用配置信息的标签:
-
至此,我们发现有两处会产生部署web应用的配置信息,一处在tomcat根目录\conf\Catalina\localhost下自动创建的.xml的单应用配置文件,另一处在Servers工程下的server.xml文件,tomcat服务器启动,当其加载一个web应用时,会先去Servers工程下的server.xml文件寻找元素,再查找conf\Catalina\localhost下的.xml文件的元素,那么就会因为出现重复的Context元素而报警告。
-
解决方案2:
只要将conf\Catalina\localhost下的XXX.xml文件的web应用配置文件删除即可,重启服务器即可。 -
解决方案3:将Server下的server.xml文件的元素删除,也可以正常部署web应用。
-
-
参考文章
https://blog.csdn.net/wearegouest/article/details/5175247
https://blog.51cto.com/13508140/2059883