将web程序部署到webapps目录下,导致定时任务启动两次,后来查看上下文启动,发现真的启动了两次,contextpath如下:
1. /
2. mycms
我到webapps目录结构如下:
mycms/
website.xml
其中website.xml文件是jetty的xml部署描述符,因此jetty启动后会启动两次,一次是website.xml部署文件启动的,另一次是jetty容器自动识别webapps/mycms/WEB-INF/web.xml标准Servlet应用启动的。
解决方法:
1. 更改部署方式,删除website.xml部署描述文件,重命名mycms文件夹为root,这样启动的contextpath为“/”
2. 删除mycms文件夹,配置标准的war包,将website.xml文件中的war属性指向war包所在路径
P.S.: jetty部署方式(摘自参考资料)
jetty支持多种部署方式,比如servlet规范中的满足以上内容条件的war包,jetty自己提供的xml部署描述符,或者直接就是一个满足servlet规范的文件夹(war包本来也是要解压的)
(1)简单部