uni-app 打包出现 createUniXKotlinCompilerOnce is not a function
uni-app 打包出现 createUniXKotlinCompilerOnce is not a function
操作步骤
在小程序下能正常运行
12:41:24.558 请注意运行模式下,因日志输出、sourcemap 以及未压缩源码等原因,性能和包体积,均不及发行模式。若要正式发布,请点击发行菜单或使用 cli 发布命令进行发布
12:41:24.558 正在编译中...
12:41:26.299 [@vue/compiler-sfc] `defineProps` is a compiler macro and no longer needs to be imported.
12:41:26.299
12:41:29.588 项目 YuShanEmploymentPlatform 编译成功。前端运行日志,请另行在小程序开发工具的控制台查看。
12:41:29.627 正在启动微信开发者工具...
12:41:30.652 [微信小程序开发者工具] - initialize
12:41:30.679 [微信小程序开发者工具] × IDE may already started at port 31904, trying to connect
12:41:32.416 [微信小程序开发者工具] √ IDE server started successfully, listening on http://127.0.0.1:32256
12:41:32.423 [微信小程序开发者工具] - open IDE
12:41:32.852 [微信小程序开发者工具] √ open IDE
12:41:32.915 微信开发者工具已启动,在HBuilderX中修改文件并保存,会自动刷新微信模拟器。
12:41:32.915 注:
12:41:32.915 1. 可以通过微信开发者工具切换pages.json中condition配置的页面,或者关闭微信开发者工具,然后再从HBuilderX中启动指定页面
12:41:32.916 2. 如果出现微信开发者工具启动后白屏的问题,检查是否启动多个微信开发者工具,如果是则关闭所有打开的微信开发者工具,然后再重新运行
12:41:32.916 3. 运行模式下不压缩代码且含有sourcemap,体积较大;若要正式发布,请点击发行菜单进行发布
12:41:32.916 ready in 5743ms.
但是在模拟器运行app不行
12:32:57.823 请注意运行模式下,因日志输出、sourcemap 以及未压缩源码等原因,性能和包体积,均不及发行模式。
12:32:57.831 编译器版本:4.45(vue3)
12:32:57.839 正在编译中...
12:32:58.516 failed to load config from D:\HBuilderX\plugins\uniapp-cli-vite\vite.config.js
12:32:58.522 error during build:
12:32:58.529 TypeError: createUniXKotlinCompilerOnce is not a function
12:32:58.536 at uniUTSAppUniModulesPlugin (D:\HBuilderX\plugins\uniapp-cli-vite\node_modules\@dcloudio\uni-cli-shared\dist\vite\plugins\uts\uni_modules.js:189:11)
12:32:58.544 at exports.default (D:\HBuilderX\plugins\uniapp-cli-vite\node_modules\@dcloudio\uni-app-vite\dist\index.js:13:56)
12:32:58.552 at D:\HBuilderX\plugins\uniapp-cli-vite\node_modules\@dcloudio\vite-plugin-uni\dist\utils\plugin.js:81:20
12:32:58.560 at Array.map (<anonymous>)
12:32:58.567 at initPlugins (D:\HBuilderX\plugins\uniapp-cli-vite\node_modules\@dcloudio\vite-plugin-uni\dist\utils\plugin.js:79:10)
12:32:58.575 at initExtraPlugins (D:\HBuilderX\plugins\uniapp-cli-vite\node_modules\@dcloudio\vite-plugin-uni\dist\utils\plugin.js:60:12)
12:32:58.583 at createPlugins (D:\HBuilderX\plugins\uniapp-cli-vite\node_modules\@dcloudio\vite-plugin-uni\dist\index.js:76:53)
12:32:58.592 at uniPlugin (D:\HBuilderX\plugins\uniapp-cli-vite\node_modules\@dcloudio\vite-plugin-uni\dist\index.js:48:11)
12:32:58.600 at Object.<anonymous> (D:\HBuilderX\plugins\uniapp-cli-vite\vite.config.js:38:48)
12:32:58.608 at Module._compile (node:internal/modules/cjs/loader:1364:14)
预期结果
能正常运行
实际结果
能正常运行
bug描述
hbuilder新建项目在小程序可以运行打包app就报错了
开发环境与版本信息
项目 | 信息 |
---|---|
PC开发环境操作系统 | Windows |
PC开发环境操作系统版本号 | win10 |
HBuilderX类型 | 正式 |
HBuilderX版本号 | 4.45 |
手机系统 | Android |
手机系统版本号 | Android 15 |
手机厂商 | 模拟器 |
手机机型 | OPPO |
页面类型 | vue |
vue版本 | vue3 |
打包方式 | 云端 |
项目创建方式 | HBuilderX |
在解决 uni-app
打包过程中遇到的 createUniXKotlinCompilerOnce is not a function
错误时,这通常指向一个内部工具链或依赖问题。尽管具体的错误原因可能多种多样,但我们可以从以下几个方面来排查和解决。以下是一些可能的解决方案,结合代码和配置调整,帮助你定位和解决问题。
1. 清理项目并重新安装依赖
首先,确保你的项目依赖是最新的,并且没有因为某些包的版本冲突导致问题。你可以尝试删除 node_modules
文件夹和 package-lock.json
或 yarn.lock
文件,然后重新安装依赖。
rm -rf node_modules
rm package-lock.json # 或者 rm yarn.lock
npm install # 或者 yarn install
2. 检查 HBuilderX
和 uni-app
CLI 版本
确保你使用的 HBuilderX
IDE 和 uni-app
CLI 工具是最新版本。有时候,软件更新会修复一些已知的bug。
3. 配置检查
检查你的 manifest.json
和 vue.config.js
(如果使用了 Vue CLI 插件)中的配置,确保没有错误或不一致的设置。
4. 检查 webpack
配置
如果你自定义了 webpack
配置,确保没有引入不兼容的插件或 loader。特别是与 Kotlin 相关的配置,虽然 uni-app
默认不直接涉及 Kotlin,但可能是通过某些依赖间接引入。
5. 示例代码审查
虽然直接代码示例可能不直接解决 createUniXKotlinCompilerOnce
的问题,但你可以审查任何可能影响构建过程的自定义脚本或配置。例如,检查 build.js
或其他构建脚本中是否有异常处理或配置错误。
6. 查看日志和错误报告
详细查看构建过程中的日志输出,寻找可能的线索。有时候,错误日志中会包含更具体的错误信息或堆栈跟踪,这有助于定位问题。
7. 社区和官方支持
如果上述步骤都不能解决问题,考虑在 uni-app
的官方社区、GitHub 仓库或相关论坛发帖求助。提供尽可能详细的信息,包括你的环境配置、操作步骤、错误日志等。
总结
由于 createUniXKotlinCompilerOnce
不是一个常见的公开 API 或错误信息,这很可能是内部工具链的一个问题。确保所有工具和环境都是最新的,并且配置正确,是解决问题的关键。如果问题依旧存在,寻求官方或社区的帮助是明智的选择。