将javascript文件版本化为maven构建的一部分,以避免Web浏览器缓存

Nim*_*sky 3 javascript java version-control release-management maven

我有一个java/spring网络应用程序应用程序,它使用相当多的javascript作为gui的一部分.然而,当我发布新版本时,我是手动的,很好地使用我的ide的重构工具,如果编辑它们,则重命名javascript文件.

这可以避免用户遇到不兼容/过时的javascript文件,但不包含新功能......或者更糟糕的是使用较新的jsp/html.

有没有更好的方法将版本添加到javascript文件及其脚本标记引用?

Sum*_*ati 7

你可以这样做.其中强制浏览器加载新更新的javascript.

yourscript.js?version=1234567890
Run Code Online (Sandbox Code Playgroud)

<script type="text/javascript" src="yourscript.js?version=1234567890"> </script>
Run Code Online (Sandbox Code Playgroud)

每次更新javascript文件时只需更新数字即可 yourscript.js?version=1234567891

它是如何工作的?

每次使用新版本号更新时,浏览器都会将此解释为新文件.所以较旧的javascript文件不会被缓存.