Unity 2021.3.7f1构建WebGL生成旧版本问题求助
Unity WebGL构建生成旧版本问题的排查方案(2021.3.7f1)
针对你遇到的WebGL构建后仍为旧版本的问题,结合你的排查步骤,可尝试以下解决方案:
1. 清理构建缓存
- 手动删除Unity的WebGL构建缓存:前往项目目录下的
Library/Bee/artifacts/WebGL,删除整个WebGL缓存文件夹,再重新执行构建。 - 或通过编辑器菜单操作:
File > Build Settings > WebGL > Clean Build,清理完成后重新构建。
2. 检查资源与打包设置
- 确认所有需要更新的资源(脚本、纹理、材质等)未被标记为
Editor Only:选中资源查看Inspector面板右上角的标签,避免资源被排除出构建包。 - 临时关闭WebGL压缩:在
Player Settings > WebGL > Publishing Settings中,将Compression Format切换为Disabled,压缩格式可能导致旧压缩文件无法被覆盖,构建后再按需恢复设置。 - 验证构建输出路径:检查Build Settings中的输出目录是否正确,确保没有指向旧版本文件夹,同时确认输出目录未被其他程序占用(比如浏览器正在打开旧构建文件)。
3. 强制资源重新编译
- 执行
Assets > Reimport All,强制重新导入所有资源并编译脚本,避免脚本缓存导致逻辑未更新。 - 排查自定义构建脚本:如果你使用了带有
PreprocessBuild或PostprocessBuild的Editor脚本,检查这类脚本是否存在覆盖、替换新构建文件的逻辑错误。
4. 处理浏览器缓存(WebGL专属)
- 测试构建版本时,使用
Ctrl+Shift+R(Windows/Linux)或Cmd+Shift+R(Mac)强制刷新浏览器,跳过缓存加载新内容。 - 手动修改
index.html的资源引用,添加版本参数:比如将<script src="Build/YourProjectName.js"></script>改为<script src="Build/YourProjectName.js?v=1.0.0"></script>,强制浏览器加载新资源文件。
5. 分析构建日志
- 在Build Settings中勾选
Show Build Log,构建完成后搜索日志中的skipped、not updated关键词,定位未被重新生成的文件,进一步排查原因。
内容的提问来源于stack exchange,提问作者ejbarba
相关产品推荐
相关产品推荐

