我有一个与上下文重新加载有关的问题。我做了什么:
启动码头
将war1.war放入/ webapps - >它会触发一个新的/ war1上下文并且有效。
将war2.war放入/ webapps - >它会触发一个新的/ war2上下文并且有效。
假设我在war1.war中对开发进行了一些更改。我想在/ webapps中升级war1.war,但是Windows抱怨正在使用这个文件。
我停止码头
我把新的war1.war放在/ webapps中 - >一切都好。
问题 - >如何在不关闭码头的情况下重新加载war1.war?
答案 0 :(得分:3)
我认为你遇到了Files locked on Windows所描述的问题:
Jetty缓冲web应用程序的静态内容,例如html文件,css文件,图像等,如果正在使用NIO连接器,则使用内存映射文件执行此操作。问题是在Windows上,内存映射文件会导致文件被锁定,因此无法更新或替换文件。这意味着您必须有效地停止Jetty才能更新文件。
有两种解决方案,均在上述链接中记录: