Flutter编译报java.net.URISyntaxException错误 常规操作无效求解决
报错原因说明
你遇到的报错内容如下:
java.net.URISyntaxException: Illegal character in opaque part at index 2: E:\...\intermediates\flutter\debug\flutter_assets\AssetManifest.json
你提供的AssetManifest.json文件本身无语法错误,该报错的核心原因是Windows环境下Java解析本地文件路径时,无法兼容Windows风格的反斜杠路径格式,触发了URI非法字符校验。
解决方案
- 修改Android构建配置:打开项目根目录下的
android/gradle.properties文件,新增如下配置项:
android.useNewApkCreator=false
保存配置后重新执行编译即可解决绝大多数此类问题。
- 检查项目全路径:确保项目存放的完整路径中没有中文、空格、特殊符号(如括号、emoji、非ASCII字符),如果存在上述字符,将项目移动到全英文无特殊字符的路径下重新编译。
- 清理Android构建缓存:进入项目的
android目录,在终端执行gradlew clean命令,执行完成后回到项目根目录重新运行编译命令。 - 升级Flutter版本:如果上述方案均无效,将Flutter SDK升级到3.0及以上稳定版,旧版本Flutter的资源清单生成逻辑存在Windows路径兼容缺陷。
内容的提问来源于stack exchange,提问作者SHUBHAM SHARMA
相关产品推荐
相关产品推荐

