运行到安卓手机自定义基座报错的uni-app问题

运行到安卓手机自定义基座报错的uni-app问题

操作步骤:

  • 自定义基座安卓报错,HBuilderX和uniapp 更新4.76之后出现这个问题,切换回4.75和4.66依旧报错,更新前无报错,uniapp已回退旧版4.66依旧报错

预期结果:

  • 正常编译运行

实际结果:

  • 09:23:25.322 项目 xxx 开始编译
  • 09:23:26.629 4.66
  • 09:23:26.629 请注意运行模式下,因日志输出、sourcemap以及未压缩源码等原因,性能和包体积,均不及发行模式。
  • 09:23:26.740 正在编译中…
  • 09:23:27.129 Browserslist: caniuse-lite is outdated. Please run:
  • 09:23:27.129 npx update-browserslist-db@latest
  • 09:23:27.129 Why you should do it regularly: https://github.com/browserslist/update-db#readme
  • 09:23:57.230 [警告⚠] uni_modules\lime-echart\static\echarts.min.js 文件体积超过 500KB,已跳过压缩以及 ES6 转 ES5 的处理,手机端使用过大的js库影响性能。
  • 09:24:05.242 项目 xxx 编译成功。
  • 09:24:06.224 手机端调试基座版本号为4.0.0, 版本号相同,跳过基座更新
  • 09:24:06.694 正在建立手机连接…
  • 09:24:08.719 项目 xxx 编译成功。
  • 09:24:08.750 Module build failed (from ./node_modules/@dcloudio/uni-cli-shared/lib/uts/uts-loader.js):
  • 09:24:08.750 TypeError: bindings.bundleKotlin is not a function
  • 09:24:08.750 at bundleKotlin (D:\WWW\xxx\node_modules@dcloudio\uts\dist\api.js:66:10)
  • 09:24:08.750 at bundle (D:\WWW\xxx\node_modules@dcloudio\uts\dist\index.js:23:39)
  • 09:24:08.750 at compile (D:\WWW\xxx\node_modules@dcloudio\uni-uts-v1\dist\kotlin.js:441:26)
  • 09:24:08.750 at Object.runKotlinDev [as runDev] (D:\WWW\xxx\node_modules@dcloudio\uni-uts-v1\dist\kotlin.js:136:27)
  • 09:24:08.750 at Object.compile (D:\WWW\xxx\node_modules@dcloudio\uni-uts-v1\dist\index.js:349:77)
  • 09:24:08.750 正在同步手机端程序文件…
  • 09:24:08.923 已停止运行…

bug描述:

  • VUE2CLI 项目

  • 标准基座安卓可以正常运行

  • 自定义基座IOS可以正常运行

  • WEB可以正常运行

  • 自定义基座安卓报错,HBuilderX和uniapp 更新4.76之后出现这个问题,切换回4.75和4.66依旧报错,更新前无报错,uniapp已回退旧版4.66依旧报错

  • 原本报错如下

  • 13:55:31.127 项目 xxx 开始编译

  • 13:55:32.899 4.66

  • 13:55:32.899 请注意运行模式下,因日志输出、sourcemap以及未压缩源码等原因,性能和包体积,均不及发行模式。

  • 13:55:33.044 正在编译中…

  • 13:55:34.126 uni-app 有新版本发布,请执行 npx @dcloudio/uvm@latest 更新,更新日志详见:https://download1.dcloud.net.cn/hbuilderx/changelog/4.76.2025082103.html

  • 13:56:02.596 [警告⚠] uni_modules\lime-echart\static\echarts.min.js 文件体积超过 500KB,已跳过压缩以及 ES6 转 ES5 的处理,手机端使用过大的js库影响性能。

  • 13:56:10.982 项目 xxx 编译成功。

  • 13:56:11.331 运行方式:打开 HBuilderX, 导入 dist\dev\app-plus 运行。

  • 13:56:12.265 检测到自定义基座有更新,正在更新自定义基座…

  • 13:56:16.190 安装自定义基座App完成

  • 13:56:16.848 正在建立手机连接…

  • 13:56:17.382 项目 xxx 编译成功。

  • 13:56:17.425 Module build failed (from ./node_modules/@dcloudio/uni-cli-shared/lib/uts/uts-loader.js):

  • 13:56:17.425 Error: Cannot find module ‘@dcloudio/uts-win32-x64-msvc’

  • 13:56:17.425 Require stack:

  • 13:56:17.425 - D:\WWW\xxx\node_modules@dcloudio\uts\dist\binding.js

  • 13:56:17.425 - D:\WWW\xxx\node_modules@dcloudio\uts\dist\api.js

  • 13:56:17.425 - D:\WWW\xxx\node_modules@dcloudio\uts\dist\index.js

  • 13:56:17.425 - D:\WWW\xxx\node_modules@dcloudio\uni-uts-v1\dist\code.js

  • 13:56:17.425 - D:\WWW\xxx\node_modules@dcloudio\uni-uts-v1\dist\index.js

  • 13:56:17.425 - D:\WWW\xxx\node_modules@dcloudio\uni-cli-shared\lib\uts\uts.js

  • 13:56:17.425 - D:\WWW\xxx\node_modules@dcloudio\uni-cli-shared\lib\uts\resolver.js

  • 13:56:17.425 - D:\WWW\xxx\node_modules@dcloudio\uni-cli-shared\lib\uts\index.js

  • 13:56:17.425 - D:\WWW\xxx\node_modules@dcloudio\uni-cli-shared\lib\index.js

  • 13:56:17.425 - D:\WWW\xxx\node_modules@dcloudio\vue-cli-plugin-uni\lib\env.js

  • 13:56:17.425 - D:\WWW\xxx\node_modules@dcloudio\vue-cli-plugin-uni\index.js

  • 13:56:17.425 - D:\WWW\xxx\node_modules@vue\cli-service\lib\Service.js

  • 13:56:17.426 - D:\WWW\xxx\node_modules@vue\cli-service\bin\vue-cli-service.js

  • 13:56:17.426 at Module._resolveFilename (node:internal/modules/cjs/loader:1225:15)

  • 13:56:17.426 at Module._resolveFilename (D:\WWW\xxx\node_modules\module-alias\index.js:49:29)

  • 13:56:17.426 at Module._load (node:internal/modules/cjs/loader:1051:27)

  • 13:56:17.426 at Module.require (node:internal/modules/cjs/loader:1311:19)

  • 13:56:17.426 at require (node:internal/modules/helpers:179:18)

  • 13:56:17.426 at resolveNativeBinding (D:\WWW\xxx\node_modules@dcloudio\uts\dist\binding.js:99:12)

  • 13:56:17.426 at Object.<anonymous> (D:\WWW\xxx\node_modules@dcloudio\uts\dist\binding.js:101:19)

  • 13:56:17.426 at Module._compile (node:internal/modules/cjs/loader:1469:14)

  • 13:56:17.426 at Module._extensions…js (node:internal/modules/cjs/loader:1548:10)

  • 13:56:17.426 at Module.load (node:internal/modules/cjs/loader:1288:32)

  • 13:56:17.426 at Module._load (node:internal/modules/cjs/loader:1104:12)

  • 13:56:17.426 at Module.require (node:internal/modules/cjs/loader:1311:19)

  • 13:56:17.426 at require (node:internal/modules/helpers:179:18)

  • 13:56:17.426 at Object.<anonymous> (D:\WWW\xxx\node_modules@dcloudio\uts\dist\api.js:9:7)

  • 13:56:17.426 at Module._compile (node:internal/modules/cjs/loader:1469:14)

  • 13:56:17.426 at Module._extensions…js (node:internal/modules/cjs/loader:1548:10)

  • 13:56:17.426 at Module.load (node:internal/modules/cjs/loader:1288:32)

  • 13:56:17.426 at Module._load (node:internal/modules/cjs/loader:1104:12)

  • 13:56:17.426 at Module.require (node:internal/modules/cjs/loader:1311:19)

  • 13:56:17.427 at require (node:internal/modules/helpers:179:18)

  • 13:56:17.427 at Object.<anonymous> (D:\WWW\xxx\node_modules@dcloudio\uts\dist\index.js:4:15)

  • 13:56:17.427 at Module._compile (node:internal/modules/cjs/loader:1469:14)

  • 13:56:17.427 at Module._extensions…js (node:internal/modules/cjs/loader:1548:10)

  • 13:56:17.427 at Module.load (node:internal/modules/cjs/loader:1288:32)

  • 13:56:17.427 at Module._load (node:internal/modules/cjs/loader:1104:12)

  • 13:56:17.427 at Module.require (node:internal/modules/cjs/loader:1311:19)

  • 13:56:17.427 at require (node:internal/modules/helpers:179:18)

  • 13:56:17.427 at parseInterfaceTypes (D:\WWW\xxx\node_modules@dcloudio\uni-uts-v1\dist\code.js:301:23)

  • 13:56:17.427 at genProxyCode (D:\WWW\xxx\node_modules@dcloudio\uni-uts-v1\dist\code.js:30:27)

  • 13:56:17.427 at Object.compile (D:\WWW\xxx\node_modules@dcloudio\uni-uts-v1\dist\index.js:162:41)

  • 13:56:17.427 at compilePlugin (D:\WWW\xxx\node_modules@dcloudio\uni-cli-shared\lib\uts\uts-loader.js:176:21)

  • 13:56:17.427 at runNextTicks (node:internal/process/task_queues:60:5)

  • 13:56:17.427 at process.processTimers (node:internal/timers:516:9)

  • 13:56:17.624 已停止运行…

  • 安装 依赖 ‘@dcloudio/uts-win32-x64-msvc’ 后报错如下

  • 09:23:25.322 项目 xxx 开始编译

  • 09:23:26.629 4.66

  • 09:23:26.629 请注意运行模式下,因日志输出、sourcemap以及未压缩源码等原因,性能和包体积,均不及发行模式。

  • 09:23:26.740 正在编译中…

  • 09:23:27.129 Browserslist: caniuse-lite is outdated. Please run:

  • 09:23:27.129 npx update-browserslist-db@latest

  • 09:23:27.129 Why you should do it regularly: https://github.com/browserslist/update-db#readme

  • 09:23:57.230 [警告⚠] uni_modules\lime-echart\static\echarts.min.js 文件体积超过 500KB,已跳过压缩以及 ES6 转 ES5 的处理,手机端使用过大的js库影响性能。

  • 09:24:05.242 项目 xxx 编译成功。

  • 09:24:06.224 手机端调试基座版本号为4.0.0, 版本号相同,跳过基座更新

  • 09:24:06.694 正在建立手机连接…

  • 09:24:08.719 项目 xxx 编译成功。

  • 09:24:08.750 Module build failed (from ./node_modules/@dcloudio/uni-cli-shared/lib/uts/uts-loader.js):

  • 09:24:08.750 TypeError: bindings.bundleKotlin is not a function

  • 09:24:08.750 at bundleKotlin (D:\WWW\xxx\node_modules@dcloudio\uts\dist\api.js:66:10)

  • 09:24:08.750 at bundle (D:\WWW\xxx\node_modules@dcloudio\uts\dist\index.js:23:39)

  • 09:24:08.750 at compile (D:\WWW\xxx\node_modules@dcloudio\uni-uts-v1\dist\kotlin.js:441:26)

  • 09:24:08.750 at Object.runKotlinDev [as runDev] (D:\WWW\xxx\node_modules@dcloudio\uni-uts-v1\dist\kotlin.js:136:27)

  • 09:24:08.750 at Object.compile (D:\WWW\xxx\node_modules@dcloudio\uni-uts-v1\dist\index.js:349:77)

  • 09:24:08.750 正在同步手机端程序文件…

  • 09:24:08.923 已停止运行…


更多关于运行到安卓手机自定义基座报错的uni-app问题的实战教程也可以访问 https://www.itying.com/category-93-b0.html

17 回复

确保自己升级的时候,没有缺少安装@dcloudio/uts-win32-x64-msvc依赖

更多关于运行到安卓手机自定义基座报错的uni-app问题的实战教程也可以访问 https://www.itying.com/category-93-b0.html


升级时没有自动安装改依赖,报错上面的,手动安装@dcloudio/uts-win32-x64-msvc后报错下面的

回复 zzgxx: 确保package.json所有@dcloudio开头的包版本号都一致

回复 DCloud_UNI_FengXY: “dependencies”: { “@dcloudio/uni-app”: “2.0.2-4070620250821001”, “@dcloudio/uni-app-plus”: “2.0.2-4070620250821001”, “@dcloudio/uni-h5”: “2.0.2-4070620250821001”, “@dcloudio/uni-i18n”: “2.0.2-4070620250821001”, “@dcloudio/uni-mp-360”: “2.0.2-4070620250821001”, “@dcloudio/uni-mp-alipay”: “2.0.2-4070620250821001”, “@dcloudio/uni-mp-baidu”: “2.0.2-4070620250821001”, “@dcloudio/uni-mp-harmony”: “2.0.2-4070620250821001”, “@dcloudio/uni-mp-jd”: “2.0.2-4070620250821001”, “@dcloudio/uni-mp-kuaishou”: “2.0.2-4070620250821001”, “@dcloudio/uni-mp-lark”: “2.0.2-4070620250821001”, “@dcloudio/uni-mp-qq”: “2.0.2-4070620250821001”, “@dcloudio/uni-mp-toutiao”: “2.0.2-4070620250821001”, “@dcloudio/uni-mp-vue”: “2.0.2-4070620250821001”, “@dcloudio/uni-mp-weixin”: “2.0.2-4070620250821001”, “@dcloudio/uni-mp-xhs”: “2.0.2-4070620250821001”, “@dcloudio/uni-quickapp-native”: “2.0.2-4070620250821001”, “@dcloudio/uni-quickapp-webview”: “2.0.2-4070620250821001”, “@dcloudio/uni-stacktracey”: “2.0.2-4070620250821001”, “@dcloudio/uni-stat”: “2.0.2-4070620250821001”, “@dcloudio/uni-ui”: “^1.5.7”, “@fingerprintjs/fingerprintjs”: “^4.6.2”, “@qiun/ucharts”: “^2.5.0-20230101”, “@vue/shared”: “^3.0.0”, “core-js”: “^3.8.3”, “crypto-js”: “^4.2.0”, “dplayer”: “^1.27.1”, “flyio”: “^0.6.2”, “hls.js”: “^1.6.0”, “js-md5”: “^0.8.3”, “uni-simple-router”: “^2.0.7”, “vconsole”: “^3.15.1”, “vue”: “>= 2.6.14 < 2.7”, “vuex”: “^3.2.0” }, “devDependencies”: { “@dcloudio/types”: “^3.3.2”, “@dcloudio/uni-automator”: “2.0.2-4070620250821001”, “@dcloudio/uni-cli-i18n”: “2.0.2-4070620250821001”, “@dcloudio/uni-cli-shared”: “2.0.2-4070620250821001”, “@dcloudio/uni-helper-json”: “*”, “@dcloudio/uni-migration”: “2.0.2-4070620250821001”, “@dcloudio/uni-template-compiler”: “2.0.2-4070620250821001”, “@dcloudio/uni-uts-v1”: “3.0.0-alpha-4060720250515001”, “@dcloudio/vue-cli-plugin-hbuilderx”: “2.0.2-4070620250821001”, “@dcloudio/vue-cli-plugin-uni”: “2.0.2-4070620250821001”, “@dcloudio/vue-cli-plugin-uni-optimize”: “2.0.2-4070620250821001”, “@dcloudio/webpack-uni-mp-loader”: “2.0.2-4070620250821001”, “@dcloudio/webpack-uni-pages-loader”: “2.0.2-4070620250821001”, “@vue/cli-plugin-babel”: “~5.0.0”, “@vue/cli-service”: “~5.0.0”, “babel-plugin-import”: “^1.11.0”, “cross-env”: “^7.0.2”, “eslint”: “^6.8.0”, “eslint-plugin-vue”: “^6.2.2”, “jest”: “^25.4.0”, “less”: “^4.2.0”, “less-loader”: “^11.1.3”, “postcss-comment”: “^2.0.0”, “prettier”: “^2.5.0”, “sass”: “1.69.1”, “sass-loader”: “10.1.1”, “stylelint”: “^13.13.1”, “stylelint-config-prettier”: “^8.0.2”, “stylelint-config-standard-less”: “^2.0.0”, “stylelint-less”: “^2.0.0”, “uni-read-pages”: “^1.0.5”, “vue-eslint-parser”: “^7.6.0”, “vue-template-compiler”: “>= 2.6.14 < 2.7” },

回复 DCloud_UNI_FengXY: 需要把@dcloudio/uni-uts-v1改成2.0.2-4070620250821001吗

回复 DCloud_UNI_FengXY: “dependencies”: { “@dcloudio/uni-app”: “2.0.2-4070620250821001”, “@dcloudio/uni-app-plus”: “2.0.2-4070620250821001”, “@dcloudio/uni-h5”: “2.0.2-4070620250821001”, “@dcloudio/uni-i18n”: “2.0.2-4070620250821001”, “@dcloudio/uni-mp-360”: “2.0.2-4070620250821001”, “@dcloudio/uni-mp-alipay”: “2.0.2-4070620250821001”, “@dcloudio/uni-mp-baidu”: “2.0.2-4070620250821001”, “@dcloudio/uni-mp-harmony”: “2.0.2-4070620250821001”, “@dcloudio/uni-mp-jd”: “2.0.2-4070620250821001”, “@dcloudio/uni-mp-kuaishou”: “2.0.2-4070620250821001”, “@dcloudio/uni-mp-lark”: “2.0.2-4070620250821001”, “@dcloudio/uni-mp-qq”: “2.0.2-4070620250821001”, “@dcloudio/uni-mp-toutiao”: “2.0.2-4070620250821001”, “@dcloudio/uni-mp-vue”: “2.0.2-4070620250821001”, “@dcloudio/uni-mp-weixin”: “2.0.2-4070620250821001”, “@dcloudio/uni-mp-xhs”: “2.0.2-4070620250821001”, “@dcloudio/uni-quickapp-native”: “2.0.2-4070620250821001”, “@dcloudio/uni-quickapp-webview”: “2.0.2-4070620250821001”, “@dcloudio/uni-stacktracey”: “2.0.2-4070620250821001”, “@dcloudio/uni-stat”: “2.0.2-4070620250821001”, “@dcloudio/uni-ui”: “^1.5.7”, “@fingerprintjs/fingerprintjs”: “^4.6.2”, “@qiun/ucharts”: “^2.5.0-20230101”, “@vue/shared”: “^3.0.0”, “core-js”: “^3.8.3”, “crypto-js”: “^4.2.0”, “dplayer”: “^1.27.1”, “flyio”: “^0.6.2”, “hls.js”: “^1.6.0”, “js-md5”: “^0.8.3”, “uni-simple-router”: “^2.0.7”, “vconsole”: “^3.15.1”, “vue”: “>= 2.6.14 < 2.7”, “vuex”: “^3.2.0” }, “devDependencies”: { “@dcloudio/types”: “^3.3.2”, “@dcloudio/uni-automator”: “2.0.2-4070620250821001”, “@dcloudio/uni-cli-i18n”: “2.0.2-4070620250821001”, “@dcloudio/uni-cli-shared”: “2.0.2-4070620250821001”, “@dcloudio/uni-helper-json”: “*”, “@dcloudio/uni-migration”: “2.0.2-4070620250821001”, “@dcloudio/uni-template-compiler”: “2.0.2-4070620250821001”, “@dcloudio/uni-uts-v1”: “3.0.0-4070620250821001”, “@dcloudio/vue-cli-plugin-hbuilderx”: “2.0.2-4070620250821001”, “@dcloudio/vue-cli-plugin-uni”: “2.0.2-4070620250821001”, “@dcloudio/vue-cli-plugin-uni-optimize”: “2.0.2-4070620250821001”, “@dcloudio/webpack-uni-mp-loader”: “2.0.2-4070620250821001”, “@dcloudio/webpack-uni-pages-loader”: “2.0.2-4070620250821001”, “@vue/cli-plugin-babel”: “~5.0.0”, “@vue/cli-service”: “~5.0.0”, “babel-plugin-import”: “^1.11.0”, “cross-env”: “^7.0.2”, “eslint”: “^6.8.0”, “eslint-plugin-vue”: “^6.2.2”, “jest”: “^25.4.0”, “less”: “^4.2.0”, “less-loader”: “^11.1.3”, “postcss-comment”: “^2.0.0”, “prettier”: “^2.5.0”, “sass”: “1.69.1”, “sass-loader”: “10.1.1”, “stylelint”: “^13.13.1”, “stylelint-config-prettier”: “^8.0.2”, “stylelint-config-standard-less”: “^2.0.0”, “stylelint-less”: “^2.0.0”, “uni-read-pages”: “^1.0.5”, “vue-eslint-parser”: “^7.6.0”, “vue-template-compiler”: “>= 2.6.14 < 2.7” }, 修改一致后重新install 还是相同报错

回复 DCloud_UNI_FengXY: 修改一致后重新install 还是相同报错 TypeError: bindings.bundleKotlin is not a function

回复 zzgxx: 使用你贴的package.json依赖测试没有问题,可以node_modules/@dcloudio/uts/dist/api.js第10行,增加日志:console.log(‘bindings’,bindings) 然后运行编译,正常情况下应该打印类似这样的信息: 13:18:10.921 bindings { 13:18:10.921 bundleArkTS: [Function: bundleArkTS], 13:18:10.921 bundleKotlin: [Function: bundleKotlin], 13:18:10.921 bundleSwift: [Function: bundleSwift], 13:18:10.921 parse: [Function: parse], 13:18:10.921 toArkTS: [Function: toArkTS], 13:18:10.921 toKotlin: [Function: toKotlin], 13:18:10.921 toSwift: [Function: toSwift], 13:18:10.921 getTargetTriple: [Function: getTargetTriple], 13:18:10.921 KotlinTask: [Function: KotlinTask], 13:18:10.921 BundleKotlinTask: [Function: BundleKotlinTask], 13:18:10.921 ParseTask: [Function: ParseTask], 13:18:10.921 BundleSwiftTask: [Function: BundleSwiftTask], 13:18:10.921 ArkTsTask: [Function: ArkTsTask], 13:18:10.921 BundleArkTsTask: [Function: BundleArkTsTask], 13:18:10.921 SwiftTask: [Function: SwiftTask] 13:18:10.921 }

回复 DCloud_UNI_FengXY: 添加后我这边只有这三个。parse、toKotlin、getTargetTriple,具体报错在下面回复

请问解决了吗,我更新4.76之后安卓打包也是这个问题TypeError: bindings.bundleKotlin is not a function

添加打印后如图


node_modules目录和package 的 lock.json文件都删除,重新install一下试试

回复 DCloud_UNI_FengXY: 试过了,安装是用yarn

回复 zzgxx: 查看一下node_modules中@dcloudio/uts-win32-x64-msvc的版本号是多少

回复 DCloud_UNI_FengXY: “@dcloudio/uts-win32-x64-msvc”: “3.0.2-4070620250821001”,很奇怪,不会自动安装当前依赖的版本,需要自己手动选择

回复 zzgxx: 没懂什么意思?正确的应该安装的是:3.0.0-4070620250821001

今天重新删除、安装后可以运行了,node_modules里面确实是3.0.0-4070620250821001

回到顶部