在 tomcat 上运行的 Web 应用程序在修改后未更新

在 tomcat 上运行的 Web 应用程序在修改后未更新

我正在修改另一个人用 AngularJS 编写的 Web 应用程序。此应用程序由 csv 数据文件提供,一开始运行良好。但是,当我尝试更改 csv 文件中的某些数据时,应用程序中依赖于从这些 .csv 文件中获取的数据的每个部分都会损坏。

我最初怀疑这个问题与 Excel 在尝试修改 .csv 文件时将其识别为 SYLK 文件有关。但是,当我尝试用旧 .csv 替换新 .csv 时,它没有任何变化。甚至,删除整个应用程序并替换旧应用程序也无法解决任何问题。

所以现在,我怀疑运行应用程序的 Tomcat 服务器(Windows 下的 8.0)存在一些缓存问题。我尝试从 Tomcat 安装文件夹中删除 work/Catalina 中的 localhost 文件夹,如 Serverfault 上的另一个问题中所建议的那样,但它也没有改变任何东西(无论是在 IE 下还是在 Chrome 下)。我可以返回到正常运行的应用程序的唯一方法是重新启动计算机,但显然我不想每次进行修改时都重新启动。

知道导致该问题的原因是什么吗?

答案1

我确实找到了答案,它实际上是两个问题的结合:

  • 浏览器没有覆盖缓存。解决方案:每次更新应用程序时删除 Firefox/Chrome 的缓存。IE 实际上是自己检查页面的新版本,所以它没有这个问题。

  • 尝试修改 .csv 文件时出现 unix/DOS 兼容性问题。解决方案:使用记事本打开修改后的 csv 文件并保存为 UTF-8 文件(并确保文件末尾没有回车符)。

答案2

我已经遇到过 100 次同样的问题。非常简单的解决方案是,Google Chrome 屏幕截图缓存删除清除浏览器缓存,或者直接在新选项卡中打开 URL(即:只需单击浏览器新选​​项卡并粘贴应用程序本地主机 URL)

现在清除缓存的快捷方式:

Ctrl+Shift+Delete 然后选中缓存复选框然后提交。关闭浏览器并重新打开它然后运行您的应用程序。

或者

重新启动 Tomcat 服务器。

相关内容