Visual Studio Cordova应用发布模式构建致命错误求助
解决VS2017 + Cordova 6.3.1发布构建时的XML解析致命错误
这个问题我之前帮不少开发者排查过,核心原因就是你的Android SDK里platform-tools/api/annotations.zip包里的XML文件存在非法字符(<),导致Cordova构建流程中的XML解析器直接报错。给你几个实用的解决思路:
方法1:替换损坏的annotations.zip文件
- 先找到报错路径里的文件:
D:\Android\Sdk\platform-tools\api\annotations.zip,一定要先备份这个文件,防止操作失误搞坏SDK环境。 - 你可以从同事或者其他正常运行的Android SDK环境里,复制一份同版本的
annotations.zip过来替换;或者打开Android SDK Manager,找到Platform Tools组件,选择“重新安装”,让系统自动修复损坏的文件。
方法2:手动修复XML里的非法字符
如果没法获取正常的文件包,也可以手动修复:
- 把
annotations.zip解压到临时文件夹,找到android/accounts/annotations.xml文件。 - 用文本编辑器打开这个文件,找到报错提示里的
<item>标签,它的name属性值里包含了<字符——XML规范里属性值不能直接用<,你需要把它转义成<,或者直接修改掉这个非法字符,确保属性值符合XML语法要求。 - 修复完成后,把文件重新压缩成
annotations.zip,替换回原来的SDK路径里。
方法3:升级相关工具版本(长期解决方案)
你的Cordova 6.3.1版本确实比较老旧了,这类兼容性问题在新版本里大概率已经被修复:
- 尝试升级Cordova到较新的稳定版本(比如8.x或9.x,注意和VS2017的兼容性,VS2017对Cordova 8+的支持是没问题的)。
- 同时把Android SDK的
Platform Tools升级到最新稳定版,避免旧版本SDK里的文件损坏或兼容问题。
注意事项
- 所有操作前一定要备份相关文件,避免破坏本地的Android SDK环境。
- 如果是团队开发,建议统一大家的Cordova和Android SDK版本,避免这类问题在团队里重复出现。
内容的提问来源于stack exchange,提问作者Ashokkumar
相关产品推荐
相关产品推荐

