我现在正在某个安静的项目上工作,我现在使用tomcat和eclipse都可以正常工作。
我在2012年1月22日部署了战争(带有一些打印消息),该战争正常进行,然后第二天我进行了一些更改,删除了一些消息,然后重新部署了文件…在我的webapps文件夹中,它显示了“上次更新”的最新时间我的战争档案已修改” ..我在做什么错告诉我..
PS反映了对同一项目的JSP页面的任何更改,但servlet类未更改
这是日志文件显示的_SEVERE:Web应用程序似乎已通过java.util.Timer API启动了名为[MySQL语句取消计时器]的TimerThread,但未能停止它。为了防止内存泄漏,已强制取消计时器(以及相关的线程)。_
好吧,这是我的问题的摘要,我希望我现在可以向您解释这个问题,我再次执行以下步骤 1.从webapps中 删除了我的webapp目录2.试图访问servlet(显示“资源不可用”) 3.进行一些操作更改打印语句以进行调试 。4.从eclipse中 重新部署了WAR。5。再次访问该servlet时,它不是最新版本,而是显示相同的旧消息。
现在告诉我是否有解决方案…。
在尝试了很多事情之后,我刚刚观察到部署WAR文件时,当我在WAR中手动添加这些类文件时,非JSP servlet类文件未包含在WAR中,所有更改均已更新。。现在您可以告诉我如何自动将它们部署在WAR中。什么问题?
由于JSP文件是经过预编译的,因此它们不会更新,即使它们可能从已更改的文件中提取信息,每个可能受影响的JSP文件也需要对其进行较小的更改,例如添加一个空格然后删除一个空格,然后保存。
然后构建您的WAR,然后应该显示更新。今晚我遇到了同样的问题,其他答案都无济于事。关键是要检查部署WAR的Tomcat目录中的文件日期。我注意到,即使我部署了一个全新的清理后的WAR,并删除了所有文件夹,那里仍然有较旧的缓存文件,这可能是因为Eclipse认为它们没有任何更改而可以节省编译时间。
希望这可以帮助