uniapp运行环境版本和编译器版本不一致的问题

HBuilderX1.7.0及以上版本uni-app添加了运行环境版本和编译环境版本的校验机制,当两个版本不一致时会弹出以下提示:

什么时候会出现这种问题?

  • 情况1:HBuilderX版本很老,或cli编译器一直没升级,而云打包服务器已经升级,此时编译环境版本低,而运行环境版本高,就会报错。
  • 情况2:使用老版HBuilderX打包了App后,后来使用新版HBuilderX或新版cli制作了wgt升级包。此时编译环境会高于运行环境,也会报错。
  • 情况3:使用了cli或自定义基座或本地打包,虽然HBuilderX升级了,但这些配套并没有手动升级,也是报错。
  • 情况4:如果HBuilderX版本高于SDK版本,有可能是HBuilderX在升级时出现问题,手机端基座没有升级成功。如果是这种情况,在插件管理里卸载“真机运行插件”,然后重新安装这个插件。

出现问题该怎么办?

  1. 比较简单的就是全部升级,保持HBuilderX、自定义基座、cli项目编译器都是最新版。
  2. wgt升级时遇到这个问题,首先你可以自测,看老的运行引擎和新版编译器编的wgt是否搭配,如果测试有问题,那不能使用wgt升级,请使用整包升级。如果测试正常,可以在manifest.json文件的源码视图中配置忽略这个提醒,在“app-plus”->"compatible" 节点下添加配置 方式如下:
    HBuilderX1.9.0及以上版本新增以下配置避免弹出提示框
"app-plus": {  
    "compatible": {  
        "ignoreVersion": true //true表示忽略版本检查提示框,HBuilderX1.9.0及以上版本支持  
    },  
//....  
},  

       以下方法可针对指定版本避免弹出提示框。

//...  
"app-plus": {  
    "compatible": {  
        "runtimeVersion": "1.7.0", //根据实际情况填写  
        "compilerVersion": "1.7.1" //根据实际情况填写  
    },  
//....  
},  
//...
原文地址:https://www.cnblogs.com/qdjj/p/15588238.html