uniappx插件nutpi-idcard 开发与使用指南(适配鸿蒙)
uniappx插件nutpi-idcard 开发与使用指南(适配鸿蒙)
前言
nutpi-idcard 是一个基于 UTS (uni-app TypeScript Syntax) 开发的 uni-app 插件适配鸿蒙,主要用于解析身份证号码,提取其中的关键信息,如地区、出生日期、性别等。本插件支持中国居民身份证、港澳台居民居住证以及外国人永久居留身份证。
本文将详细介绍 nutpi-idcard 插件的开发过程和使用方法,希望能为其他开发者提供一些参考。
插件功能
- 身份证号码解析:能够从身份证号码中提取省市区(或国家/地区)、出生日期、性别等信息。
- 支持多种证件类型:
- 中国居民身份证
- 港澳台居民居住证
- 外国人永久居留身份证
- 纯 UTS 实现:确保了插件在 uni-app x 及其他支持 UTS 的环境中的兼容性和性能。
- 跨平台支持:理论上支持所有 uni-app 支持的平台,特别是针对 App (Android, iOS, HarmonyOS) 进行了适配。
开发过程
1. 项目初始化与环境搭建
插件的开发基于 HBuilderX,利用其对 uni-app 和 UTS 的良好支持。
- 创建 uni-app 项目:首先,创建一个标准的 uni-app 项目(如果还没有的话)。
- 创建 uni_module:在项目根目录下创建
uni_modules文件夹(如果不存在),然后在其中创建nutpi-idcard文件夹作为插件的根目录。 - 配置文件
package.json:在nutpi-idcard目录下创建package.json文件,用于定义插件的基本信息、依赖、平台支持等。关键配置项包括:id: 插件的唯一标识。displayName: 插件在 HBuilderX 中显示的名称。version: 插件版本号。description: 插件描述。author: 作者信息-坚果派。contact: 联系方式。repository: 代码仓库地址。engines: HBuilderX 版本要求。dcloudext: DCloud 扩展配置,如插件类型 (uts)、销售信息等。uni_modules: uni-app 模块配置,如依赖、加密、平台支持等。
2. 核心逻辑实现 (utssdk)
插件的核心代码位于 utssdk 目录下,针对不同平台可以有不同的实现,但本项目中主要关注通用的 UTS 实现,特别是针对 HarmonyOS 的适配。
-
目录结构:
nutpi-idcard/ ├── utssdk/ │ ├── app-harmony/ # HarmonyOS 平台特定代码 │ │ ├── index.uts # HarmonyOS 入口及核心逻辑 │ │ ├── interfaces.uts # TypeScript 接口定义 │ │ └── module/ │ │ └── data/ # 数据文件 (行政区划、国家代码) │ │ ├── china.uts │ │ └── international.uts │ ├── app-android/ # Android 平台 (如果需要特定实现) │ ├── app-ios/ # iOS 平台 (如果需要特定实现) │ ├── index.uts # 插件主入口 (通常导出各平台实现) │ └── interfaces.uts # 通用接口定义 ├── package.json ├── readme.md └── changelog.md -
数据准备 (
module/data/):china.uts: 存储中国行政区划代码与名称的映射。international.uts: 存储 ISO 3166-1 国家代码与名称的映射。
-
接口定义 (
interfaces.uts):
定义了身份证解析结果的数据结构IDResult。export interface IDResult { type?: string; // 证件类型 sign?: string; // 签发机关或地区 country?: string; // 国家或地区 birthday?: string; // 出生日期 (YYYY-MM-DD) sex?: string; // 性别 ('男' 或 '女') isValid?: boolean; // 校验结果 (当前版本简单返回 true) } -
核心解析逻辑 (
app-harmony/index.uts):
这是插件的核心,包含了主要的解析函数。parseID(id: string): IDResult: 公开的 API 函数,根据身份证号码的格式(通过正则表达式判断)调用相应的内部解析函数。parserChina(id: string): IDResult: 解析中国居民身份证和港澳台居民居住证。- 通过身份证号码的前6位确定省市区。
- 通过第7到14位确定出生日期。
- 通过第17位(顺序码的最后一位)确定性别。
parserInternational(id: string): IDResult: 解析外国人永久居留身份证。- 通过第1到3位(国家或地区代码)和
international.uts数据确定国家。 - 通过第7到14位确定出生日期。
- 通过第17位确定性别。
isIdCardValidInternal(id: string): boolean: 身份证号码有效性校验函数。目前简单返回true,未来可以根据国家标准实现更复杂的校验逻辑(如校验码计算)。
// idcard/uni_modules/nutpi-idcard/utssdk/app-harmony/index.uts import { chinaData as _china } from './module/data/china.uts'; import { internationalData as _international } from './module/data/international.uts'; import type { IDResult } from './interfaces.uts'; function parserInternational(id: string): IDResult { /* ... */ } function parserChina(id: string): IDResult { /* ... */ } function isIdCardValidInternal(id: string): boolean { /* ... */ } export function parseID(id: string): IDResult { if(id.match(/^9\d{16}[0-9xX]$/)){ // 外国人永久居留身份证特征 (假设以9开头) return parserInternational(id); }else if(id.match(/^\d{17}[0-9xX]$/)){ // 中国居民身份证特征 return parserChina(id); }else{ return { type: '未知类型' }; } }
3. 插件入口 (index.uts)
在 nutpi-idcard 根目录下的 index.uts 文件通常作为插件的统一入口,它会根据当前运行平台导出相应平台的 parseID 函数。
// idcard/uni_modules/nutpi-idcard/index.uts
// #ifdef APP-HARMONY
export * from './utssdk/app-harmony/index.uts';
// #endif
// #ifdef APP-PLUS || APP-VUE
// 假设 Android 和 iOS 使用相同的 UTS 逻辑,或者有单独的 app-android/index.uts 和 app-ios/index.uts
// 如果 utssdk/index.uts 包含了 Android 和 iOS 的通用逻辑,可以这样导出:
// export * from './utssdk/index.uts';
// 或者分别导出
// #ifdef APP-ANDROID
// export * from './utssdk/app-android/index.uts';
// #endif
// #ifdef APP-IOS
// export * from './utssdk/app-ios/index.uts';
// #endif
// #endif
// 默认导出 (如果需要在非特定App平台使用,或者作为H5等平台的兜底)
// export * from './utssdk/index.uts'; // 假设 utssdk/index.uts 包含通用或web实现
注意:上述 index.uts 的条件编译部分需要根据实际支持的平台和代码组织来编写。如果主要目标是 HarmonyOS,则 APP-HARMONY 部分是关键。
4. 文档编写
readme.md: 提供插件的详细说明,包括功能特性、安装方法、API 文档、使用示例、作者信息等。changelog.md: 记录插件的版本更新历史和主要变更。
5. 测试与调试
- 在 HBuilderX 中创建测试页面,引入插件并调用
parseID函数,传入不同的身份证号码进行测试。 - 关注控制台输出,确保解析结果的准确性。
- 针对不同平台(特别是 HarmonyOS)进行真机或模拟器测试。
遇到的问题与解决
- UTS 模块导入路径:UTS 中模块导入路径需要精确。最初可能因为
method.uts和index.uts的拆分导致函数重复声明或找不到定义的问题。通过将method.uts的内容合并到index.uts中解决了此问题。 - Git 推送标签失败:在版本发布时,如果本地没有对应的 Git 标签,
git push origin <tagname>会失败。通过先执行git tag <tagname>创建本地标签,然后再推送解决。 - 函数未定义错误:在页面中调用插件函数时,如果导入路径不正确或插件未正确导出函数,会导致
xxx is not defined错误。仔细检查插件的index.uts导出逻辑和页面中的导入路径,确保一致。
如何使用 nutpi-idcard 插件
-
安装插件:
- 从 DCloud 插件市场安装。插件地址:https://ext.dcloud.net.cn/plugin?id=23728
- 或者,如果手动引入,将
nutpi-idcard整个文件夹复制到你的 uni-app 项目的uni_modules目录下。
-
引入插件:在需要使用的页面或组件的
<script setup lang="uts">或<script lang="uts">中引入插件。// 示例:在页面的 <script setup lang="uts"> 中 import { parseID } from '@/uni_modules/nutpi-idcard'; // HBuilderX 会自动处理路径映射 // 如果在 uni-app x 项目的 .uvue 文件中,路径可能需要更明确,或者依赖 HBuilderX 的智能提示 -
调用解析函数:使用
parseID函数解析身份证号码。const idNumber = '110101199003070978'; // 替换为实际的身份证号码 const idInfo = parseID(idNumber); if (idInfo) { console.log('证件类型:', idInfo.type); console.log('签发地/国家:', idInfo.sign ?? idInfo.country); console.log('出生日期:', idInfo.birthday); console.log('性别:', idInfo.sex); console.log('是否有效:', idInfo.isValid); }
API 参考
parseID(id: string): IDResult
解析身份证号码并返回包含详细信息的对象。
-
参数:
id: string- 需要解析的身份证号码(18位中国居民身份证,或外国人永久居留身份证等)。
-
返回值:
IDResult对象,其结构如下:interface IDResult { type?: string; // 证件类型 (例如:'居民身份证', '外国人永久居留身份证', '港澳台居民居住证', '未知类型') sign?: string; // 签发机关或地区信息 (例如:'北京市市辖区', '北京市朝阳区') country?: string; // 国家或地区 (例如:'中国', '无国籍' 或其他国家名称,主要用于外国人身份证) birthday?: string; // 出生日期,格式为 'YYYY-MM-DD' sex?: string; // 性别 ('男' 或 '女') isValid?: boolean; // 身份证号码是否有效 (当前版本简单返回true,待实现详细校验逻辑) }
未来展望
- 完善校验逻辑:实现更严格的身份证号码校验,包括校验码的计算与验证。
- 更广泛的证件类型支持:考虑支持更多国家或地区的身份证件类型。
- 性能优化:对数据查找和字符串处理进行优化,提高解析效率。
- 更详细的错误提示:当输入格式错误或无法解析时,提供更具体的错误信息。
- 单元测试:为插件编写完善的单元测试,确保代码质量和稳定性。
作者与联系方式
- 作者:坚果派
- 公众号:nutpi
- 电话:17752170152
- 官网:https://www.nutpi.net/
- 代码仓库:https://gitcode.com/nutpi/uni-idcard
希望这个插件能对您有所帮助!如果您有任何问题或建议,欢迎联系。
相关链接
- UTS 语法
- UTS API 插件
- Hello UTS
- 插件地址:https://ext.dcloud.net.cn/plugin?id=23728
- 仓库地址:https://gitcode.com/nutpi/uni-idcard
uniappx插件nutpi-idcard 开发与使用指南(适配鸿蒙)
前言
nutpi-idcard 是一个基于 UTS (uni-app TypeScript Syntax) 开发的 uni-app 插件适配鸿蒙,主要用于解析身份证号码,提取其中的关键信息,如地区、出生日期、性别等。本插件支持中国居民身份证、港澳台居民居住证以及外国人永久居留身份证。
本文将详细介绍 nutpi-idcard 插件的开发过程和使用方法,希望能为其他开发者提供一些参考。
插件功能
- 身份证号码解析:能够从身份证号码中提取省市区(或国家/地区)、出生日期、性别等信息。
- 支持多种证件类型:
- 中国居民身份证
- 港澳台居民居住证
- 外国人永久居留身份证
- 纯 UTS 实现:确保了插件在 uni-app x 及其他支持 UTS 的环境中的兼容性和性能。
- 跨平台支持:理论上支持所有 uni-app 支持的平台,特别是针对 App (Android, iOS, HarmonyOS) 进行了适配。
开发过程
1. 项目初始化与环境搭建
插件的开发基于 HBuilderX,利用其对 uni-app 和 UTS 的良好支持。
- 创建 uni-app 项目:首先,创建一个标准的 uni-app 项目(如果还没有的话)。
- 创建 uni_module:在项目根目录下创建
uni_modules文件夹(如果不存在),然后在其中创建nutpi-idcard文件夹作为插件的根目录。 - 配置文件
package.json:在nutpi-idcard目录下创建package.json文件,用于定义插件的基本信息、依赖、平台支持等。关键配置项包括:id: 插件的唯一标识。displayName: 插件在 HBuilderX 中显示的名称。version: 插件版本号。description: 插件描述。author: 作者信息-坚果派。contact: 联系方式。repository: 代码仓库地址。engines: HBuilderX 版本要求。dcloudext: DCloud 扩展配置,如插件类型 (uts)、销售信息等。uni_modules: uni-app 模块配置,如依赖、加密、平台支持等。
2. 核心逻辑实现 (utssdk)
插件的核心代码位于 utssdk 目录下,针对不同平台可以有不同的实现,但本项目中主要关注通用的 UTS 实现,特别是针对 HarmonyOS 的适配。
-
目录结构:
nutpi-idcard/ ├── utssdk/ │ ├── app-harmony/ # HarmonyOS 平台特定代码 │ │ ├── index.uts # HarmonyOS 入口及核心逻辑 │ │ ├── interfaces.uts # TypeScript 接口定义 │ │ └── module/ │ │ └── data/ # 数据文件 (行政区划、国家代码) │ │ ├── china.uts │ │ └── international.uts │ ├── app-android/ # Android 平台 (如果需要特定实现) │ ├── app-ios/ # iOS 平台 (如果需要特定实现) │ ├── index.uts # 插件主入口 (通常导出各平台实现) │ └── interfaces.uts # 通用接口定义 ├── package.json ├── readme.md └── changelog.md -
数据准备 (
module/data/):china.uts: 存储中国行政区划代码与名称的映射。international.uts: 存储 ISO 3166-1 国家代码与名称的映射。
-
接口定义 (
interfaces.uts):
定义了身份证解析结果的数据结构IDResult。export interface IDResult { type?: string; // 证件类型 sign?: string; // 签发机关或地区 country?: string; // 国家或地区 birthday?: string; // 出生日期 (YYYY-MM-DD) sex?: string; // 性别 ('男' 或 '女') isValid?: boolean; // 校验结果 (当前版本简单返回 true) } -
核心解析逻辑 (
app-harmony/index.uts):
这是插件的核心,包含了主要的解析函数。parseID(id: string): IDResult: 公开的 API 函数,根据身份证号码的格式(通过正则表达式判断)调用相应的内部解析函数。parserChina(id: string): IDResult: 解析中国居民身份证和港澳台居民居住证。- 通过身份证号码的前6位确定省市区。
- 通过第7到14位确定出生日期。
- 通过第17位(顺序码的最后一位)确定性别。
parserInternational(id: string): IDResult: 解析外国人永久居留身份证。- 通过第1到3位(国家或地区代码)和
international.uts数据确定国家。 - 通过第7到14位确定出生日期。
- 通过第17位确定性别。
isIdCardValidInternal(id: string): boolean: 身份证号码有效性校验函数。目前简单返回true,未来可以根据国家标准实现更复杂的校验逻辑(如校验码计算)。
// idcard/uni_modules/nutpi-idcard/utssdk/app-harmony/index.uts import { chinaData as _china } from './module/data/china.uts'; import { internationalData as _international } from './module/data/international.uts'; import type { IDResult } from './interfaces.uts'; function parserInternational(id: string): IDResult { /* ... */ } function parserChina(id: string): IDResult { /* ... */ } function isIdCardValidInternal(id: string): boolean { /* ... */ } export function parseID(id: string): IDResult { if(id.match(/^9\d{16}[0-9xX]$/)){ // 外国人永久居留身份证特征 (假设以9开头) return parserInternational(id); }else if(id.match(/^\d{17}[0-9xX]$/)){ // 中国居民身份证特征 return parserChina(id); }else{ return { type: '未知类型' }; } }
3. 插件入口 (index.uts)
在 nutpi-idcard 根目录下的 index.uts 文件通常作为插件的统一入口,它会根据当前运行平台导出相应平台的 parseID 函数。
// idcard/uni_modules/nutpi-idcard/index.uts
// #ifdef APP-HARMONY
export * from './utssdk/app-harmony/index.uts';
// #endif
// #ifdef APP-PLUS || APP-VUE
// 假设 Android 和 iOS 使用相同的 UTS 逻辑,或者有单独的 app-android/index.uts 和 app-ios/index.uts
// 如果 utssdk/index.uts 包含了 Android 和 iOS 的通用逻辑,可以这样导出:
// export * from './utssdk/index.uts';
// 或者分别导出
// #ifdef APP-ANDROID
// export * from './utssdk/app-android/index.uts';
// #endif
// #ifdef APP-IOS
// export * from './utssdk/app-ios/index.uts';
// #endif
// #endif
// 默认导出 (如果需要在非特定App平台使用,或者作为H5等平台的兜底)
// export * from './utssdk/index.uts'; // 假设 utssdk/index.uts 包含通用或web实现
注意:上述 index.uts 的条件编译部分需要根据实际支持的平台和代码组织来编写。如果主要目标是 HarmonyOS,则 APP-HARMONY 部分是关键。
4. 文档编写
readme.md: 提供插件的详细说明,包括功能特性、安装方法、API 文档、使用示例、作者信息等。changelog.md: 记录插件的版本更新历史和主要变更。
5. 测试与调试
- 在 HBuilderX 中创建测试页面,引入插件并调用
parseID函数,传入不同的身份证号码进行测试。 - 关注控制台输出,确保解析结果的准确性。
- 针对不同平台(特别是 HarmonyOS)进行真机或模拟器测试。
遇到的问题与解决
- UTS 模块导入路径:UTS 中模块导入路径需要精确。最初可能因为
method.uts和index.uts的拆分导致函数重复声明或找不到定义的问题。通过将method.uts的内容合并到index.uts中解决了此问题。 - Git 推送标签失败:在版本发布时,如果本地没有对应的 Git 标签,
git push origin <tagname>会失败。通过先执行git tag <tagname>创建本地标签,然后再推送解决。 - 函数未定义错误:在页面中调用插件函数时,如果导入路径不正确或插件未正确导出函数,会导致
xxx is not defined错误。仔细检查插件的index.uts导出逻辑和页面中的导入路径,确保一致。
如何使用 nutpi-idcard 插件
-
安装插件:
- 从 DCloud 插件市场安装。插件地址:https://ext.dcloud.net.cn/plugin?id=23728
- 或者,如果手动引入,将
nutpi-idcard整个文件夹复制到你的 uni-app 项目的uni_modules目录下。
-
引入插件:在需要使用的页面或组件的
<script setup lang="uts">或<script lang="uts">中引入插件。// 示例:在页面的 <script setup lang="uts"> 中 import { parseID } from '@/uni_modules/nutpi-idcard'; // HBuilderX 会自动处理路径映射 // 如果在 uni-app x 项目的 .uvue 文件中,路径可能需要更明确,或者依赖 HBuilderX 的智能提示 -
调用解析函数:使用
parseID函数解析身份证号码。const idNumber = '110101199003070978'; // 替换为实际的身份证号码 const idInfo = parseID(idNumber); if (idInfo) { console.log('证件类型:', idInfo.type); console.log('签发地/国家:', idInfo.sign ?? idInfo.country); console.log('出生日期:', idInfo.birthday); console.log('性别:', idInfo.sex); console.log('是否有效:', idInfo.isValid); }
API 参考
parseID(id: string): IDResult
解析身份证号码并返回包含详细信息的对象。
-
参数:
id: string- 需要解析的身份证号码(18位中国居民身份证,或外国人永久居留身份证等)。
-
返回值:
IDResult对象,其结构如下:interface IDResult { type?: string; // 证件类型 (例如:'居民身份证', '外国人永久居留身份证', '港澳台居民居住证', '未知类型') sign?: string; // 签发机关或地区信息 (例如:'北京市市辖区', '北京市朝阳区') country?: string; // 国家或地区 (例如:'中国', '无国籍' 或其他国家名称,主要用于外国人身份证) birthday?: string; // 出生日期,格式为 'YYYY-MM-DD' sex?: string; // 性别 ('男' 或 '女') isValid?: boolean; // 身份证号码是否有效 (当前版本简单返回true,待实现详细校验逻辑) }
未来展望
- 完善校验逻辑:实现更严格的身份证号码校验,包括校验码的计算与验证。
- 更广泛的证件类型支持:考虑支持更多国家或地区的身份证件类型。
- 性能优化:对数据查找和字符串处理进行优化,提高解析效率。
- 更详细的错误提示:当输入格式错误或无法解析时,提供更具体的错误信息。
- 单元测试:为插件编写完善的单元测试,确保代码质量和稳定性。
作者与联系方式
- 作者:坚果派
- 公众号:nutpi
- 电话:17752170152
- 官网:https://www.nutpi.net/
- 代码仓库:https://gitcode.com/nutpi/uni-idcard
希望这个插件能对您有所帮助!如果您有任何问题或建议,欢迎联系。
相关链接
- UTS 语法
- UTS API 插件
- Hello UTS
- 插件地址:https://ext.dcloud.net.cn/plugin?id=23728
- 仓库地址:https://gitcode.com/nutpi/uni-idcard
【建议】建议uniapp x 增加 uni.preloadPage 预加载
有看到帖子官方觉得 uni app x 是原生编译没必要预加载,但其实还是非常有必要的!!
实际业务开发中会有一些逻辑复杂的页面,onLoad加载时间会比较多,比如100-200毫秒那也会导致加载页面不够丝滑;
我们做原生开发的时候,经常会预加载组件和加载数据,但是组件还是隐藏的状态
目的就是为了在用户点击某个页面的时候,就直接将隐藏属性改成显示
这样用户点击到查看页面速度会超级无敌快,用户感知不到加载的过程
所以非常建议官方适配一下 uni.preloadPage 这个方法。
有看到帖子官方觉得 uni app x 是原生编译没必要预加载,但其实还是非常有必要的!!
实际业务开发中会有一些逻辑复杂的页面,onLoad加载时间会比较多,比如100-200毫秒那也会导致加载页面不够丝滑;
我们做原生开发的时候,经常会预加载组件和加载数据,但是组件还是隐藏的状态
目的就是为了在用户点击某个页面的时候,就直接将隐藏属性改成显示
这样用户点击到查看页面速度会超级无敌快,用户感知不到加载的过程
所以非常建议官方适配一下 uni.preloadPage 这个方法。
收起阅读 »如何使用uniapp的evalJS
使用evalJS的时候,看文档说使用的是js脚本,webview内部嵌套一个html。
我的情况下是,webview里面嵌套的是html,然后html使用的是vue。
在setup()里面设置window.XX方法。
webview:
window.XX= function(){
let a = '.....localStorage.getItem a'
let b = '.....localStorage.getItem b'
let c = '.....localStorage.getItem c'
xxx()//自定义调用方法
}
nvue:
webviewElement?.value.evalJS("localStorage.setItem('a',"+a+")");
webviewElement?.value.evalJS("localStorage.setItem('b',"+b+")");
webviewElement?.value.evalJS("localStorage.setItem('c',"+c+")");
webviewElement?.value.evalJS("XX()");
我目前尝试过,使用缓存的方式去传递参数。然后获取到参数后,再去调用一次想要的方法。就能实现在uvue页面下,传递参数去webview里面的方法,再调用webview里面的方法!
使用evalJS的时候,看文档说使用的是js脚本,webview内部嵌套一个html。
我的情况下是,webview里面嵌套的是html,然后html使用的是vue。
在setup()里面设置window.XX方法。
webview:
window.XX= function(){
let a = '.....localStorage.getItem a'
let b = '.....localStorage.getItem b'
let c = '.....localStorage.getItem c'
xxx()//自定义调用方法
}
nvue:
webviewElement?.value.evalJS("localStorage.setItem('a',"+a+")");
webviewElement?.value.evalJS("localStorage.setItem('b',"+b+")");
webviewElement?.value.evalJS("localStorage.setItem('c',"+c+")");
webviewElement?.value.evalJS("XX()");
我目前尝试过,使用缓存的方式去传递参数。然后获取到参数后,再去调用一次想要的方法。就能实现在uvue页面下,传递参数去webview里面的方法,再调用webview里面的方法!
收起阅读 »基于vue3.5+vite7+electron38仿微信/QQ电脑端聊天应用
vue3-electron38-wechat:一款最新原创跨平台electron38+vite7.0+vue3 setup+pinia3+element-plus等技术构建的仿微信电脑端聊天系统。包含了聊天、通讯录、收藏、朋友圈、短视频、我的等模块。
技术框架
- 前端框架:vite7.1.2+vue3.5.18+vue-router4.5.1
- 跨平台框架:electron38.0.0
- 组件库:element-plus^2.11.2
- 状态管理:pinia^3.0.3
- 存储服务:pinia-plugin-persistedstate^4.5.0
- 打包构建:electron-builder^24.13.3
- electron结合vite插件:vite-plugin-electron^0.29.0
项目框架结构目录
最新跨平台框架electron38+vite7创建项目模板,vue3 setup语法编码。
electron-vue3-winchat聊天项目已经同步到我的原创作品集。
热文推荐
uniapp-vue3-os手机oa系统|uni-app+vue3跨三端os后台管理模板
最新版uni-app+vue3+uv-ui跨三端仿微信app聊天应用【h5+小程序+app端】
Flutter3-MacOS桌面OS系统|flutter3.32+window_manager客户端OS模板
最新研发flutter3.27+bitsdojo_window+getx客户端仿微信聊天Exe应用
最新版Flutter3.32+Dart3.8跨平台仿微信app聊天界面|朋友圈
最新版uniapp+vue3+uv-ui跨三端短视频+直播+聊天【H5+小程序+App端】
原创uniapp+vue3+deepseek+uv-ui跨端实战仿deepseek/豆包流式ai聊天对话助手。
vue3-webseek网页版AI问答|Vite6+DeepSeek+Arco流式ai聊天打字效果
Electron35-DeepSeek桌面端AI系统|vue3.5+electron+arco客户端ai模板
uniapp+vue3酒店预订|vite5+uniapp预约订房系统模板(h5+小程序+App端)
Electron32-Vue3OS桌面版os系统|vue3+electron+arco客户端OS管理模板
Tauri2.0+Vite5聊天室|vue3+tauri2+element-plus仿微信|tauri聊天应用
tauri2.0-admin桌面端后台系统|Tauri2+Vite5+ElementPlus管理后台EXE程序
vue3-electron38-wechat:一款最新原创跨平台electron38+vite7.0+vue3 setup+pinia3+element-plus等技术构建的仿微信电脑端聊天系统。包含了聊天、通讯录、收藏、朋友圈、短视频、我的等模块。
技术框架
- 前端框架:vite7.1.2+vue3.5.18+vue-router4.5.1
- 跨平台框架:electron38.0.0
- 组件库:element-plus^2.11.2
- 状态管理:pinia^3.0.3
- 存储服务:pinia-plugin-persistedstate^4.5.0
- 打包构建:electron-builder^24.13.3
- electron结合vite插件:vite-plugin-electron^0.29.0
项目框架结构目录
最新跨平台框架electron38+vite7创建项目模板,vue3 setup语法编码。
electron-vue3-winchat聊天项目已经同步到我的原创作品集。
热文推荐
uniapp-vue3-os手机oa系统|uni-app+vue3跨三端os后台管理模板
最新版uni-app+vue3+uv-ui跨三端仿微信app聊天应用【h5+小程序+app端】
Flutter3-MacOS桌面OS系统|flutter3.32+window_manager客户端OS模板
最新研发flutter3.27+bitsdojo_window+getx客户端仿微信聊天Exe应用
最新版Flutter3.32+Dart3.8跨平台仿微信app聊天界面|朋友圈
最新版uniapp+vue3+uv-ui跨三端短视频+直播+聊天【H5+小程序+App端】
原创uniapp+vue3+deepseek+uv-ui跨端实战仿deepseek/豆包流式ai聊天对话助手。
vue3-webseek网页版AI问答|Vite6+DeepSeek+Arco流式ai聊天打字效果
Electron35-DeepSeek桌面端AI系统|vue3.5+electron+arco客户端ai模板
uniapp+vue3酒店预订|vite5+uniapp预约订房系统模板(h5+小程序+App端)
Electron32-Vue3OS桌面版os系统|vue3+electron+arco客户端OS管理模板
Tauri2.0+Vite5聊天室|vue3+tauri2+element-plus仿微信|tauri聊天应用
tauri2.0-admin桌面端后台系统|Tauri2+Vite5+ElementPlus管理后台EXE程序
组件库示例已上传鸿蒙应用市场,欢迎大家下载体验
组件库示例已上传鸿蒙应用市场,欢迎大家下载体验;
插件地址:https://ext.dcloud.net.cn/plugin?id=24907
组件库示例已上传鸿蒙应用市场,欢迎大家下载体验;
插件地址:https://ext.dcloud.net.cn/plugin?id=24907
免费开源的uniappx UI框架,支持鸿蒙,APP,小程序,H5
免费开源的uniappx UI框架,支持鸿蒙,APP,小程序,H5,欢迎使用~ https://ext.dcloud.net.cn/plugin?id=24907
免费开源的uniappx UI框架,支持鸿蒙,APP,小程序,H5,欢迎使用~ https://ext.dcloud.net.cn/plugin?id=24907
uniapp-x云打包报一堆未定义
以下是HBuilderX云打包编译错误信息,分析一下是什么原因?
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/edit_datika.kt:30:100 Cannot infer a type for this parameter. Please specify it explicitly.
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/edit_datika.kt:30:105 Cannot infer a type for this parameter. Please specify it explicitly.
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/edit_datika.kt:30:112 Cannot infer a type for this parameter. Please specify it explicitly.
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/edit_datika.kt:30:121 Cannot infer a type for this parameter. Please specify it explicitly.
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/edit_datika.kt:31:40 Not enough information to infer type variable V
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/edit_datika.kt:80:24 Unresolved reference: kObject
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/edit_datika.kt:80:36 Property delegate must have a 'setValue(GenComponentsEditDatika, KProperty<>, [Error type: Unresolved type for kObject]?)' method. None of the following functions is suitable:
public inline operator fun <V> Map<in String, in Any?>.setValue(thisRef: Any?, property: KProperty<>, value: Any?): Unit defined in io.dcloud.uts
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/edit_datika.kt:93:50 Variable expected
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/edit_datika.kt:95:50 Variable expected
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/edit_datika.kt:106:50 Variable expected
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/editor.kt:44:32 Type expected
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/editor.kt:45:29 Type expected
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/editor.kt:45:29 Unexpected tokens (use ';' to separate expressions on the same line)
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/editor.kt:48:14 Unexpected tokens (use ';' to separate expressions on the same line)
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/editor.kt:64:37 Type expected
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/editor.kt:65:29 Type expected
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/editor.kt:65:29 Unexpected tokens (use ';' to separate expressions on the same line)
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/editor.kt:68:14 Unexpected tokens (use ';' to separate expressions on the same line)
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/editor.kt:25:43 Unresolved reference: ctx
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/editor.kt:26:44 Only safe (?.) or non-null asserted (!!.) calls are allowed on a nullable receiver of type ComponentInternalInstance?
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/editor.kt:30:39 Unresolved reference: EditorContext
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/editor.kt:34:24 Type mismatch: inferred type is String but Unit was expected
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/editor.kt:49:50 Unresolved reference: e
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/editor.kt:54:43 Unresolved reference: context
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/editor.kt:55:44 Type mismatch: inferred type is String but Boolean was expected
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/editor.kt:69:50 Unresolved reference: e
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/subBar.kt:21:41 Unresolved reference: id
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/subBar.kt:39:143 Unresolved reference: title
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/subBar.kt:41:38 Unresolved reference: type
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/subBar.kt:42:91 Unresolved reference: type
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/subBar.kt:47:132 Unresolved reference: jctotal
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/subBar.kt:49:84 Unresolved reference: start
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/subBar.kt:51:89 Unresolved reference: currentPrice
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/subBar.kt:52:90 Unresolved reference: originalPrice
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/subBar.kt:70:42 A type annotation is required on a value parameter
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/subBar.kt:74:31 A type annotation is required on a value parameter
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:25:78 An anonymous function is not allowed to specify default values for its parameters
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:30:29 Type mismatch: inferred type is Boolean? but Boolean was expected
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:30:46 Type mismatch: inferred type is UTSArray<TreeNode>? but Boolean was expected
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:31:52 Unresolved reference. None of the following candidates is applicable because of receiver type mismatch:
public fun <T> Array<out Array<out TypeVariable(T)>>.flatten(): List<TypeVariable(T)> defined in kotlin.collections
public fun <T> Iterable<Iterable<TypeVariable(T)>>.flatten(): List<TypeVariable(T)> defined in kotlin.collections
private fun <T, R> Sequence<TypeVariable(T)>.flatten(iterator: (TypeVariable(T)) -> Iterator<TypeVariable(R)>): Sequence<TypeVariable(R)> defined in kotlin.sequences
public fun <T> Sequence<Iterable<TypeVariable(T)>>.flatten(): Sequence<TypeVariable(T)> defined in kotlin.sequences
public fun <T> Sequence<Sequence<TypeVariable(T)>>.flatten(): Sequence<TypeVariable(T)> defined in kotlin.sequences
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:37:33 No value passed for parameter 'p2'
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:42:21 Type mismatch: inferred type is UTSArray<TreeNode>? but Boolean was expected
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:43:37 Only safe (?.) or non-null asserted (!!.) calls are allowed on a nullable receiver of type Boolean?
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:50:25 Type mismatch: inferred type is UTSArray<TreeNode>? but Boolean was expected
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:51:25 Unresolved reference: initTreeData
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:57:46 Operator call corresponds to a dot-qualified call 'level.compareTo(2)' which is not allowed on a nullable receiver 'level'.
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:63:47 Operator call corresponds to a dot-qualified call 'level.times(30)' which is not allowed on a nullable receiver 'level'.
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:66:39 Operator call corresponds to a dot-qualified call 'level.compareTo(0)' which is not allowed on a nullable receiver 'level'.
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:71:51 Operator call corresponds to a dot-qualified call 'level.times(3)' which is not allowed on a nullable receiver 'level'.
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:74:24 Type mismatch: inferred type is UTSArray<TreeNode> but Unit was expected
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:76:19 Cannot infer a type for this parameter. Please specify it explicitly.
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:94:101 Type mismatch: inferred type is Boolean? but Boolean was expected
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:99:70 Type mismatch: inferred type is Boolean? but Boolean was expected
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:153:11 Redeclaration: Detail
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:191:79 Unresolved reference: GenUniModulesUniPopupComponentsUniPopupUniPopup
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:192:59 Unresolved reference: GenUniModulesUniPopupComponentsUniPopupUniPopup
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:192:128 Unresolved reference: GenUniModulesUniPopupComponentsUniPopupUniPopup
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:192:199 Unresolved reference: GenUniModulesUniPopupComponentsUniPopupUniPopup
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:192:263 Unresolved reference: GenUniModulesUniPopupComponentsUniPopupUniPopup
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:192:338 Unresolved reference: GenUniModulesUniPopupComponentsUniPopupUniPopup
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:192:413 Unresolved reference: GenUniModulesUniPopupComponentsUniPopupUniPopup
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:192:481 Unresolved reference: GenUniModulesUniPopupComponentsUniPopupUniPopup
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:192:550 Unresolved reference: GenUniModulesUniPopupComponentsUniPopupUniPopup
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:194:28 Unresolved reference: GenUniModulesUniPopupComponentsUniPopupUniPopup
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:195:12 Unresolved reference: GenUniModulesUniPopupComponentsUniPopupUniPopup
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:263:11 Redeclaration: Detail
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:266:11 Redeclaration: PickerChangeEvent
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:290:11 Redeclaration: Detail
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:293:11 Redeclaration: PickerChangeEvent
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:424:11 Redeclaration: Detail
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/exam/answer_sheet.kt:93:42 A type annotation is required on a value parameter
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/exam/answer_sheet.kt:93:47 A type annotation is required on a value parameter
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/exam/exam.kt:100:33 A type annotation is required on a value parameter
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/exam/exam_record.kt:33:79 Unresolved reference: title
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/exam/exam_record.kt:34:79 Unresolved reference: sub
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/exam/exam_record.kt:35:79 Unresolved reference: score
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/exam/exam_record.kt:36:79 Unresolved reference: date
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/exam/start_exam.kt:140:22 Unresolved reference: popup
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/exam/wrong_ques.kt:29:168 Unresolved reference: type
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/exam/wrong_ques.kt:32:82 Unresolved reference: fenleis
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/exam/wrong_ques.kt:32:95 Cannot infer a type for this parameter. Please specify it explicitly.
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/exam/wrong_ques.kt:32:101 Cannot infer a type for this parameter. Please specify it explicitly.
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/exam/wrong_ques.kt:32:108 Cannot infer a type for this parameter. Please specify it explicitly.
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/exam/wrong_ques.kt:32:117 Cannot infer a type for this parameter. Please specify it explicitly.
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/home/home.kt:36:64 Unresolved reference: url
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/subject/order_subject.kt:60:31 A type annotation is required on a value parameter
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/subject/subject.kt:28:47 Unresolved reference: text
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/subject/subject.kt:31:124 Unresolved reference: url
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/subject/subject.kt:34:125 Unresolved reference: text
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/subject/subject.kt:117:32 A type annotation is required on a value parameter
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/subject/subject.kt:121:29 A type annotation is required on a value parameter
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/subject/subject_detal.kt:24:70 Unresolved reference: title
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/subject/subject_list.kt:18:23 Unresolved reference: type
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/subject/subject_list.kt:21:36 Unresolved reference: type
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/subject/subject_list.kt:116:34 Unresolved reference: scrollTop
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/userinfo/edit_touxiang.kt:64:22 Unresolved reference: popup
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/userinfo/user_zhongxin_birthday.kt:72:30 Unresolved reference: value
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/userinfo/user_zhongxin_educational.kt:58:31 Unresolved reference: value
FAILURE: Build failed with an exception.
-
What went wrong:
Execution failed for task ':app:compileReleaseKotlin'.
> A failure occurred while executing org.jetbrains.kotlin.compilerRunner.GradleCompilerRunnerWithWorkers$GradleKotlinCompilerWorkAction
> Compilation error. See log for more details -
Try:
> Run with --debug option to get more log output.
> Run with --scan to get full insights.
> Get more help at https://help.gradle.org. -
Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:compileReleaseKotlin'.
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.lambda$executeIfValid$1(ExecuteActionsTaskExecuter.java:130)
at org.gradle.internal.Try$Failure.ifSuccessfulOrElse(Try.java:293)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeIfValid(ExecuteActionsTaskExecuter.java:128)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:116)
at org.gradle.api.internal.tasks.execution.FinalizePropertiesTaskExecuter.execute(FinalizePropertiesTaskExecuter.java:46)
at org.gradle.api.internal.tasks.execution.ResolveTaskExecutionModeExecuter.execute(ResolveTaskExecutionModeExecuter.java:51)
at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:57)
at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:74)
at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:36)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.executeTask(EventFiringTaskExecuter.java:77)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:55)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:52)
at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:209)
at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:204)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:166)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:53)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:52)
at org.gradle.execution.plan.LocalTaskNodeExecutor.execute(LocalTaskNodeExecutor.java:42)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:331)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:318)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.lambda$execute$0(DefaultTaskExecutionGraph.java:314)
at org.gradle.internal.operations.CurrentBuildOperationRef.with(CurrentBuildOperationRef.java:85)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:314)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:303)
at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.execute(DefaultPlanExecutor.java:459)
at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.run(DefaultPlanExecutor.java:376)
at org.gradle.execution.plan.DefaultPlanExecutor.process(DefaultPlanExecutor.java:111)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph.executeWithServices(DefaultTaskExecutionGraph.java:138)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph.execute(DefaultTaskExecutionGraph.java:123)
at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:35)
at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:51)
at org.gradle.execution.BuildOperationFiringBuildWorkerExecutor$ExecuteTasks.call(BuildOperationFiringBuildWorkerExecutor.java:54)
at org.gradle.execution.BuildOperationFiringBuildWorkerExecutor$ExecuteTasks.call(BuildOperationFiringBuildWorkerExecutor.java:43)
at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:209)
at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:204)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:166)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:53)
at org.gradle.execution.BuildOperationFiringBuildWorkerExecutor.execute(BuildOperationFiringBuildWorkerExecutor.java:40)
at org.gradle.internal.build.DefaultBuildLifecycleController.lambda$executeTasks$10(DefaultBuildLifecycleController.java:313)
at org.gradle.internal.model.StateTransitionController.doTransition(StateTransitionController.java:266)
at org.gradle.internal.model.StateTransitionController.lambda$tryTransition$8(StateTransitionController.java:177)
at org.gradle.internal.work.DefaultSynchronizer.withLock(DefaultSynchronizer.java:46)
at org.gradle.internal.model.StateTransitionController.tryTransition(StateTransitionController.java:177)
at org.gradle.internal.build.DefaultBuildLifecycleController.executeTasks(DefaultBuildLifecycleController.java:304)
at org.gradle.internal.build.DefaultBuildWorkGraphController$DefaultBuildWorkGraph.runWork(DefaultBuildWorkGraphController.java:220)
at org.gradle.internal.work.DefaultWorkerLeaseService.withLocks(DefaultWorkerLeaseService.java:263)
at org.gradle.internal.work.DefaultWorkerLeaseService.runAsWorkerThread(DefaultWorkerLeaseService.java:127)
at org.gradle.composite.internal.DefaultBuildController.doRun(DefaultBuildController.java:181)
at org.gradle.composite.internal.DefaultBuildController.access$000(DefaultBuildController.java:50)
at org.gradle.composite.internal.DefaultBuildController$BuildOpRunnable.lambda$run$0(DefaultBuildController.java:198)
at org.gradle.internal.operations.CurrentBuildOperationRef.with(CurrentBuildOperationRef.java:85)
at org.gradle.composite.internal.DefaultBuildController$BuildOpRunnable.run(DefaultBuildController.java:198)
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
at org.gradle.internal.concurrent.AbstractManagedExecutor$1.run(AbstractManagedExecutor.java:48)
Caused by: org.gradle.workers.internal.DefaultWorkerExecutor$WorkExecutionException: A failure occurred while executing org.jetbrains.kotlin.compilerRunner.GradleCompilerRunnerWithWorkers$GradleKotlinCompilerWorkAction
at org.gradle.workers.internal.DefaultWorkerExecutor$WorkItemExecution.waitForCompletion(DefaultWorkerExecutor.java:287)
at org.gradle.internal.work.DefaultAsyncWorkTracker.lambda$waitForItemsAndGatherFailures$2(DefaultAsyncWorkTracker.java:130)
at org.gradle.internal.Factories$1.create(Factories.java:31)
at org.gradle.internal.work.DefaultWorkerLeaseService.withoutLocks(DefaultWorkerLeaseService.java:335)
at org.gradle.internal.work.DefaultWorkerLeaseService.withoutLocks(DefaultWorkerLeaseService.java:318)
at org.gradle.internal.work.DefaultWorkerLeaseService.withoutLock(DefaultWorkerLeaseService.java:323)
at org.gradle.internal.work.DefaultAsyncWorkTracker.waitForItemsAndGatherFailures(DefaultAsyncWorkTracker.java:126)
at org.gradle.internal.work.DefaultAsyncWorkTracker.waitForItemsAndGatherFailures(DefaultAsyncWorkTracker.java:92)
at org.gradle.internal.work.DefaultAsyncWorkTracker.waitForAll(DefaultAsyncWorkTracker.java:78)
at org.gradle.internal.work.DefaultAsyncWorkTracker.waitForCompletion(DefaultAsyncWorkTracker.java:66)
at org.gradle.api.internal.tasks.execution.TaskExecution$3.run(TaskExecution.java:252)
at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:29)
at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:26)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:166)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.run(DefaultBuildOperationRunner.java:47)
at org.gradle.api.internal.tasks.execution.TaskExecution.executeAction(TaskExecution.java:229)
at org.gradle.api.internal.tasks.execution.TaskExecution.executeActions(TaskExecution.java:212)
at org.gradle.api.internal.tasks.execution.TaskExecution.executeWithPreviousOutputFiles(TaskExecution.java:195)
at org.gradle.api.internal.tasks.execution.TaskExecution.execute(TaskExecution.java:162)
at org.gradle.internal.execution.steps.ExecuteStep.executeInternal(ExecuteStep.java:105)
at org.gradle.internal.execution.steps.ExecuteStep.access$000(ExecuteStep.java:44)
at org.gradle.internal.execution.steps.ExecuteStep$1.call(ExecuteStep.java:59)
at org.gradle.internal.execution.steps.ExecuteStep$1.call(ExecuteStep.java:56)
at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:209)
at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:204)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:166)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:53)
at org.gradle.internal.execution.steps.ExecuteStep.execute(ExecuteStep.java:56)
at org.gradle.internal.execution.steps.ExecuteStep.execute(ExecuteStep.java:44)
at org.gradle.internal.execution.steps.CancelExecutionStep.execute(CancelExecutionStep.java:42)
at org.gradle.internal.execution.steps.TimeoutStep.executeWithoutTimeout(TimeoutStep.java:75)
at org.gradle.internal.execution.steps.TimeoutStep.execute(TimeoutStep.java:55)
at org.gradle.internal.execution.steps.PreCreateOutputParentsStep.execute(PreCreateOutputParentsStep.java:50)
at org.gradle.internal.execution.steps.PreCreateOutputParentsStep.execute(PreCreateOutputParentsStep.java:28)
at org.gradle.internal.execution.steps.RemovePreviousOutputsStep.execute(RemovePreviousOutputsStep.java:67)
at org.gradle.internal.execution.steps.RemovePreviousOutputsStep.execute(RemovePreviousOutputsStep.java:37)
at org.gradle.internal.execution.steps.BroadcastChangingOutputsStep.execute(BroadcastChangingOutputsStep.java:61)
at org.gradle.internal.execution.steps.BroadcastChangingOutputsStep.execute(BroadcastChangingOutputsStep.java:26)
at org.gradle.internal.execution.steps.CaptureOutputsAfterExecutionStep.execute(CaptureOutputsAfterExecutionStep.java:69)
at org.gradle.internal.execution.steps.CaptureOutputsAfterExecutionStep.execute(CaptureOutputsAfterExecutionStep.java:46)
at org.gradle.internal.execution.steps.ResolveInputChangesStep.execute(ResolveInputChangesStep.java:40)
at org.gradle.internal.execution.steps.ResolveInputChangesStep.execute(ResolveInputChangesStep.java:29)
at org.gradle.internal.execution.steps.BuildCacheStep.executeWithoutCache(BuildCacheStep.java:189)
at org.gradle.internal.execution.steps.BuildCacheStep.lambda$execute$1(BuildCacheStep.java:75)
at org.gradle.internal.Either$Right.fold(Either.java:175)
at org.gradle.internal.execution.caching.CachingState.fold(CachingState.java:62)
at org.gradle.internal.execution.steps.BuildCacheStep.execute(BuildCacheStep.java:73)
at org.gradle.internal.execution.steps.BuildCacheStep.execute(BuildCacheStep.java:48)
at org.gradle.internal.execution.steps.StoreExecutionStateStep.execute(StoreExecutionStateStep.java:46)
at org.gradle.internal.execution.steps.StoreExecutionStateStep.execute(StoreExecutionStateStep.java:35)
at org.gradle.internal.execution.steps.SkipUpToDateStep.executeBecause(SkipUpToDateStep.java:75)
at org.gradle.internal.execution.steps.SkipUpToDateStep.lambda$execute$2(SkipUpToDateStep.java:53)
at org.gradle.internal.execution.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:53)
at org.gradle.internal.execution.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:35)
at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.execute(MarkSnapshottingInputsFinishedStep.java:37)
at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.execute(MarkSnapshottingInputsFinishedStep.java:27)
at org.gradle.internal.execution.steps.ResolveIncrementalCachingStateStep.executeDelegate(ResolveIncrementalCachingStateStep.java:49)
at org.gradle.internal.execution.steps.ResolveIncrementalCachingStateStep.executeDelegate(ResolveIncrementalCachingStateStep.java:27)
at org.gradle.internal.execution.steps.AbstractResolveCachingStateStep.execute(AbstractResolveCachingStateStep.java:71)
at org.gradle.internal.execution.steps.AbstractResolveCachingStateStep.execute(AbstractResolveCachingStateStep.java:39)
at org.gradle.internal.execution.steps.ResolveChangesStep.execute(ResolveChangesStep.java:65)
at org.gradle.internal.execution.steps.ResolveChangesStep.execute(ResolveChangesStep.java:36)
at org.gradle.internal.execution.steps.ValidateStep.execute(ValidateStep.java:107)
at org.gradle.internal.execution.steps.ValidateStep.execute(ValidateStep.java:56)
at org.gradle.internal.execution.steps.AbstractCaptureStateBeforeExecutionStep.execute(AbstractCaptureStateBeforeExecutionStep.java:64)
at org.gradle.internal.execution.steps.AbstractCaptureStateBeforeExecutionStep.execute(AbstractCaptureStateBeforeExecutionStep.java:43)
at org.gradle.internal.execution.steps.AbstractSkipEmptyWorkStep.executeWithNonEmptySources(AbstractSkipEmptyWorkStep.java:125)
at org.gradle.internal.execution.steps.AbstractSkipEmptyWorkStep.execute(AbstractSkipEmptyWorkStep.java:61)
at org.gradle.internal.execution.steps.AbstractSkipEmptyWorkStep.execute(AbstractSkipEmptyWorkStep.java:36)
at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsStartedStep.execute(MarkSnapshottingInputsStartedStep.java:38)
at org.gradle.internal.execution.steps.LoadPreviousExecutionStateStep.execute(LoadPreviousExecutionStateStep.java:36)
at org.gradle.internal.execution.steps.LoadPreviousExecutionStateStep.execute(LoadPreviousExecutionStateStep.java:23)
at org.gradle.internal.execution.steps.HandleStaleOutputsStep.execute(HandleStaleOutputsStep.java:75)
at org.gradle.internal.execution.steps.HandleStaleOutputsStep.execute(HandleStaleOutputsStep.java:41)
at org.gradle.internal.execution.steps.AssignMutableWorkspaceStep.lambda$execute$0(AssignMutableWorkspaceStep.java:35)
at org.gradle.api.internal.tasks.execution.TaskExecution$4.withWorkspace(TaskExecution.java:289)
at org.gradle.internal.execution.steps.AssignMutableWorkspaceStep.execute(AssignMutableWorkspaceStep.java:31)
at org.gradle.internal.execution.steps.AssignMutableWorkspaceStep.execute(AssignMutableWorkspaceStep.java:22)
at org.gradle.internal.execution.steps.ChoosePipelineStep.execute(ChoosePipelineStep.java:40)
at org.gradle.internal.execution.steps.ChoosePipelineStep.execute(ChoosePipelineStep.java:23)
at org.gradle.internal.execution.steps.ExecuteWorkBuildOperationFiringStep.lambda$execute$2(ExecuteWorkBuildOperationFiringStep.java:67)
at org.gradle.internal.execution.steps.ExecuteWorkBuildOperationFiringStep.execute(ExecuteWorkBuildOperationFiringStep.java:67)
at org.gradle.internal.execution.steps.ExecuteWorkBuildOperationFiringStep.execute(ExecuteWorkBuildOperationFiringStep.java:39)
at org.gradle.internal.execution.steps.IdentityCacheStep.execute(IdentityCacheStep.java:46)
at org.gradle.internal.execution.steps.IdentityCacheStep.execute(IdentityCacheStep.java:34)
at org.gradle.internal.execution.steps.IdentifyStep.execute(IdentifyStep.java:48)
at org.gradle.internal.execution.steps.IdentifyStep.execute(IdentifyStep.java:35)
at org.gradle.internal.execution.impl.DefaultExecutionEngine$1.execute(DefaultExecutionEngine.java:61)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeIfValid(ExecuteActionsTaskExecuter.java:127)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:116)
at org.gradle.api.internal.tasks.execution.FinalizePropertiesTaskExecuter.execute(FinalizePropertiesTaskExecuter.java:46)
at org.gradle.api.internal.tasks.execution.ResolveTaskExecutionModeExecuter.execute(ResolveTaskExecutionModeExecuter.java:51)
at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:57)
at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:74)
at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:36)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.executeTask(EventFiringTaskExecuter.java:77)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:55)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:52)
at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:209)
at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:204)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:166)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:53)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:52)
at org.gradle.execution.plan.LocalTaskNodeExecutor.execute(LocalTaskNodeExecutor.java:42)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:331)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:318)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.lambda$execute$0(DefaultTaskExecutionGraph.java:314)
at org.gradle.internal.operations.CurrentBuildOperationRef.with(CurrentBuildOperationRef.java:85)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:314)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:303)
at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.execute(DefaultPlanExecutor.java:459)
at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.run(DefaultPlanExecutor.java:376)
at org.gradle.execution.plan.DefaultPlanExecutor.process(DefaultPlanExecutor.java:111)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph.executeWithServices(DefaultTaskExecutionGraph.java:138)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph.execute(DefaultTaskExecutionGraph.java:123)
at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:35)
at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:51)
at org.gradle.execution.BuildOperationFiringBuildWorkerExecutor$ExecuteTasks.call(BuildOperationFiringBuildWorkerExecutor.java:54)
at org.gradle.execution.BuildOperationFiringBuildWorkerExecutor$ExecuteTasks.call(BuildOperationFiringBuildWorkerExecutor.java:43)
at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:209)
at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:204)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:166)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:53)
at org.gradle.execution.BuildOperationFiringBuildWorkerExecutor.execute(BuildOperationFiringBuildWorkerExecutor.java:40)
at org.gradle.internal.build.DefaultBuildLifecycleController.lambda$executeTasks$10(DefaultBuildLifecycleController.java:313)
at org.gradle.internal.model.StateTransitionController.doTransition(StateTransitionController.java:266)
at org.gradle.internal.model.StateTransitionController.lambda$tryTransition$8(StateTransitionController.java:177)
at org.gradle.internal.work.DefaultSynchronizer.withLock(DefaultSynchronizer.java:46)
at org.gradle.internal.model.StateTransitionController.tryTransition(StateTransitionController.java:177)
at org.gradle.internal.build.DefaultBuildLifecycleController.executeTasks(DefaultBuildLifecycleController.java:304)
at org.gradle.internal.build.DefaultBuildWorkGraphController$DefaultBuildWorkGraph.runWork(DefaultBuildWorkGraphController.java:220)
at org.gradle.internal.work.DefaultWorkerLeaseService.withLocks(DefaultWorkerLeaseService.java:263)
at org.gradle.internal.work.DefaultWorkerLeaseService.runAsWorkerThread(DefaultWorkerLeaseService.java:127)
at org.gradle.composite.internal.DefaultBuildController.doRun(DefaultBuildController.java:181)
at org.gradle.composite.internal.DefaultBuildController.access$000(DefaultBuildController.java:50)
at org.gradle.composite.internal.DefaultBuildController$BuildOpRunnable.lambda$run$0(DefaultBuildController.java:198)
at org.gradle.internal.operations.CurrentBuildOperationRef.with(CurrentBuildOperationRef.java:85)
at org.gradle.composite.internal.DefaultBuildController$BuildOpRunnable.run(DefaultBuildController.java:198)
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
at org.gradle.internal.concurrent.AbstractManagedExecutor$1.run(AbstractManagedExecutor.java:48)
Caused by: org.jetbrains.kotlin.gradle.tasks.CompilationErrorException: Compilation error. See log for more details
at org.jetbrains.kotlin.gradle.tasks.TasksUtilsKt.throwExceptionIfCompilationFailed(tasksUtils.kt:22)
at org.jetbrains.kotlin.compilerRunner.GradleKotlinCompilerWork.run(GradleKotlinCompilerWork.kt:144)
at org.jetbrains.kotlin.compilerRunner.GradleCompilerRunnerWithWorkers$GradleKotlinCompilerWorkAction.execute(GradleCompilerRunnerWithWorkers.kt:76)
at org.gradle.workers.internal.DefaultWorkerServer.execute(DefaultWorkerServer.java:63)
at org.gradle.workers.internal.NoIsolationWorkerFactory$1$1.create(NoIsolationWorkerFactory.java:66)
at org.gradle.workers.internal.NoIsolationWorkerFactory$1$1.create(NoIsolationWorkerFactory.java:62)
at org.gradle.internal.classloader.ClassLoaderUtils.executeInClassloader(ClassLoaderUtils.java:100)
at org.gradle.workers.internal.NoIsolationWorkerFactory$1.lambda$execute$0(NoIsolationWorkerFactory.java:62)
at org.gradle.workers.internal.AbstractWorker$1.call(AbstractWorker.java:44)
at org.gradle.workers.internal.AbstractWorker$1.call(AbstractWorker.java:41)
at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:209)
at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:204)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:166)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:53)
at org.gradle.workers.internal.AbstractWorker.executeWrappedInBuildOperation(AbstractWorker.java:41)
at org.gradle.workers.internal.NoIsolationWorkerFactory$1.execute(NoIsolationWorkerFactory.java:59)
at org.gradle.workers.internal.DefaultWorkerExecutor.lambda$submitWork$0(DefaultWorkerExecutor.java:174)
at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.runExecution(DefaultConditionalExecutionQueue.java:194)
at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.access$700(DefaultConditionalExecutionQueue.java:127)
at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner$1.run(DefaultConditionalExecutionQueue.java:169)
at org.gradle.internal.Factories$1.create(Factories.java:31)
at org.gradle.internal.work.DefaultWorkerLeaseService.withLocks(DefaultWorkerLeaseService.java:263)
at org.gradle.internal.work.DefaultWorkerLeaseService.runAsWorkerThread(DefaultWorkerLeaseService.java:127)
at org.gradle.internal.work.DefaultWorkerLeaseService.runAsWorkerThread(DefaultWorkerLeaseService.java:132)
at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.runBatch(DefaultConditionalExecutionQueue.java:164)
at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.run(DefaultConditionalExecutionQueue.java:133)
... 2 moreBUILD FAILED in 1m 36s
gradle build error: 1
以下是HBuilderX云打包编译错误信息,分析一下是什么原因?
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/edit_datika.kt:30:100 Cannot infer a type for this parameter. Please specify it explicitly.
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/edit_datika.kt:30:105 Cannot infer a type for this parameter. Please specify it explicitly.
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/edit_datika.kt:30:112 Cannot infer a type for this parameter. Please specify it explicitly.
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/edit_datika.kt:30:121 Cannot infer a type for this parameter. Please specify it explicitly.
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/edit_datika.kt:31:40 Not enough information to infer type variable V
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/edit_datika.kt:80:24 Unresolved reference: kObject
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/edit_datika.kt:80:36 Property delegate must have a 'setValue(GenComponentsEditDatika, KProperty<>, [Error type: Unresolved type for kObject]?)' method. None of the following functions is suitable:
public inline operator fun <V> Map<in String, in Any?>.setValue(thisRef: Any?, property: KProperty<>, value: Any?): Unit defined in io.dcloud.uts
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/edit_datika.kt:93:50 Variable expected
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/edit_datika.kt:95:50 Variable expected
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/edit_datika.kt:106:50 Variable expected
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/editor.kt:44:32 Type expected
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/editor.kt:45:29 Type expected
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/editor.kt:45:29 Unexpected tokens (use ';' to separate expressions on the same line)
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/editor.kt:48:14 Unexpected tokens (use ';' to separate expressions on the same line)
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/editor.kt:64:37 Type expected
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/editor.kt:65:29 Type expected
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/editor.kt:65:29 Unexpected tokens (use ';' to separate expressions on the same line)
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/editor.kt:68:14 Unexpected tokens (use ';' to separate expressions on the same line)
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/editor.kt:25:43 Unresolved reference: ctx
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/editor.kt:26:44 Only safe (?.) or non-null asserted (!!.) calls are allowed on a nullable receiver of type ComponentInternalInstance?
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/editor.kt:30:39 Unresolved reference: EditorContext
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/editor.kt:34:24 Type mismatch: inferred type is String but Unit was expected
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/editor.kt:49:50 Unresolved reference: e
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/editor.kt:54:43 Unresolved reference: context
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/editor.kt:55:44 Type mismatch: inferred type is String but Boolean was expected
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/editor.kt:69:50 Unresolved reference: e
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/subBar.kt:21:41 Unresolved reference: id
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/subBar.kt:39:143 Unresolved reference: title
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/subBar.kt:41:38 Unresolved reference: type
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/subBar.kt:42:91 Unresolved reference: type
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/subBar.kt:47:132 Unresolved reference: jctotal
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/subBar.kt:49:84 Unresolved reference: start
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/subBar.kt:51:89 Unresolved reference: currentPrice
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/subBar.kt:52:90 Unresolved reference: originalPrice
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/subBar.kt:70:42 A type annotation is required on a value parameter
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/subBar.kt:74:31 A type annotation is required on a value parameter
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:25:78 An anonymous function is not allowed to specify default values for its parameters
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:30:29 Type mismatch: inferred type is Boolean? but Boolean was expected
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:30:46 Type mismatch: inferred type is UTSArray<TreeNode>? but Boolean was expected
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:31:52 Unresolved reference. None of the following candidates is applicable because of receiver type mismatch:
public fun <T> Array<out Array<out TypeVariable(T)>>.flatten(): List<TypeVariable(T)> defined in kotlin.collections
public fun <T> Iterable<Iterable<TypeVariable(T)>>.flatten(): List<TypeVariable(T)> defined in kotlin.collections
private fun <T, R> Sequence<TypeVariable(T)>.flatten(iterator: (TypeVariable(T)) -> Iterator<TypeVariable(R)>): Sequence<TypeVariable(R)> defined in kotlin.sequences
public fun <T> Sequence<Iterable<TypeVariable(T)>>.flatten(): Sequence<TypeVariable(T)> defined in kotlin.sequences
public fun <T> Sequence<Sequence<TypeVariable(T)>>.flatten(): Sequence<TypeVariable(T)> defined in kotlin.sequences
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:37:33 No value passed for parameter 'p2'
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:42:21 Type mismatch: inferred type is UTSArray<TreeNode>? but Boolean was expected
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:43:37 Only safe (?.) or non-null asserted (!!.) calls are allowed on a nullable receiver of type Boolean?
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:50:25 Type mismatch: inferred type is UTSArray<TreeNode>? but Boolean was expected
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:51:25 Unresolved reference: initTreeData
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:57:46 Operator call corresponds to a dot-qualified call 'level.compareTo(2)' which is not allowed on a nullable receiver 'level'.
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:63:47 Operator call corresponds to a dot-qualified call 'level.times(30)' which is not allowed on a nullable receiver 'level'.
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:66:39 Operator call corresponds to a dot-qualified call 'level.compareTo(0)' which is not allowed on a nullable receiver 'level'.
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:71:51 Operator call corresponds to a dot-qualified call 'level.times(3)' which is not allowed on a nullable receiver 'level'.
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:74:24 Type mismatch: inferred type is UTSArray<TreeNode> but Unit was expected
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:76:19 Cannot infer a type for this parameter. Please specify it explicitly.
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:94:101 Type mismatch: inferred type is Boolean? but Boolean was expected
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/components/treeBar.kt:99:70 Type mismatch: inferred type is Boolean? but Boolean was expected
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:153:11 Redeclaration: Detail
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:191:79 Unresolved reference: GenUniModulesUniPopupComponentsUniPopupUniPopup
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:192:59 Unresolved reference: GenUniModulesUniPopupComponentsUniPopupUniPopup
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:192:128 Unresolved reference: GenUniModulesUniPopupComponentsUniPopupUniPopup
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:192:199 Unresolved reference: GenUniModulesUniPopupComponentsUniPopupUniPopup
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:192:263 Unresolved reference: GenUniModulesUniPopupComponentsUniPopupUniPopup
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:192:338 Unresolved reference: GenUniModulesUniPopupComponentsUniPopupUniPopup
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:192:413 Unresolved reference: GenUniModulesUniPopupComponentsUniPopupUniPopup
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:192:481 Unresolved reference: GenUniModulesUniPopupComponentsUniPopupUniPopup
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:192:550 Unresolved reference: GenUniModulesUniPopupComponentsUniPopupUniPopup
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:194:28 Unresolved reference: GenUniModulesUniPopupComponentsUniPopupUniPopup
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:195:12 Unresolved reference: GenUniModulesUniPopupComponentsUniPopupUniPopup
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:263:11 Redeclaration: Detail
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:266:11 Redeclaration: PickerChangeEvent
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:290:11 Redeclaration: Detail
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:293:11 Redeclaration: PickerChangeEvent
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/index.kt:424:11 Redeclaration: Detail
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/exam/answer_sheet.kt:93:42 A type annotation is required on a value parameter
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/exam/answer_sheet.kt:93:47 A type annotation is required on a value parameter
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/exam/exam.kt:100:33 A type annotation is required on a value parameter
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/exam/exam_record.kt:33:79 Unresolved reference: title
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/exam/exam_record.kt:34:79 Unresolved reference: sub
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/exam/exam_record.kt:35:79 Unresolved reference: score
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/exam/exam_record.kt:36:79 Unresolved reference: date
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/exam/start_exam.kt:140:22 Unresolved reference: popup
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/exam/wrong_ques.kt:29:168 Unresolved reference: type
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/exam/wrong_ques.kt:32:82 Unresolved reference: fenleis
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/exam/wrong_ques.kt:32:95 Cannot infer a type for this parameter. Please specify it explicitly.
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/exam/wrong_ques.kt:32:101 Cannot infer a type for this parameter. Please specify it explicitly.
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/exam/wrong_ques.kt:32:108 Cannot infer a type for this parameter. Please specify it explicitly.
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/exam/wrong_ques.kt:32:117 Cannot infer a type for this parameter. Please specify it explicitly.
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/home/home.kt:36:64 Unresolved reference: url
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/subject/order_subject.kt:60:31 A type annotation is required on a value parameter
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/subject/subject.kt:28:47 Unresolved reference: text
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/subject/subject.kt:31:124 Unresolved reference: url
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/subject/subject.kt:34:125 Unresolved reference: text
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/subject/subject.kt:117:32 A type annotation is required on a value parameter
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/subject/subject.kt:121:29 A type annotation is required on a value parameter
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/subject/subject_detal.kt:24:70 Unresolved reference: title
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/subject/subject_list.kt:18:23 Unresolved reference: type
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/subject/subject_list.kt:21:36 Unresolved reference: type
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/subject/subject_list.kt:116:34 Unresolved reference: scrollTop
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/userinfo/edit_touxiang.kt:64:22 Unresolved reference: popup
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/userinfo/user_zhongxin_birthday.kt:72:30 Unresolved reference: value
e: file://[PackagePath]/wgtRoot/UNI2207F5A/.uniappx/android/src/pages/userinfo/user_zhongxin_educational.kt:58:31 Unresolved reference: value
FAILURE: Build failed with an exception.
-
What went wrong:
Execution failed for task ':app:compileReleaseKotlin'.
> A failure occurred while executing org.jetbrains.kotlin.compilerRunner.GradleCompilerRunnerWithWorkers$GradleKotlinCompilerWorkAction
> Compilation error. See log for more details -
Try:
> Run with --debug option to get more log output.
> Run with --scan to get full insights.
> Get more help at https://help.gradle.org. -
Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:compileReleaseKotlin'.
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.lambda$executeIfValid$1(ExecuteActionsTaskExecuter.java:130)
at org.gradle.internal.Try$Failure.ifSuccessfulOrElse(Try.java:293)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeIfValid(ExecuteActionsTaskExecuter.java:128)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:116)
at org.gradle.api.internal.tasks.execution.FinalizePropertiesTaskExecuter.execute(FinalizePropertiesTaskExecuter.java:46)
at org.gradle.api.internal.tasks.execution.ResolveTaskExecutionModeExecuter.execute(ResolveTaskExecutionModeExecuter.java:51)
at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:57)
at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:74)
at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:36)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.executeTask(EventFiringTaskExecuter.java:77)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:55)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:52)
at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:209)
at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:204)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:166)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:53)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:52)
at org.gradle.execution.plan.LocalTaskNodeExecutor.execute(LocalTaskNodeExecutor.java:42)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:331)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:318)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.lambda$execute$0(DefaultTaskExecutionGraph.java:314)
at org.gradle.internal.operations.CurrentBuildOperationRef.with(CurrentBuildOperationRef.java:85)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:314)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:303)
at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.execute(DefaultPlanExecutor.java:459)
at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.run(DefaultPlanExecutor.java:376)
at org.gradle.execution.plan.DefaultPlanExecutor.process(DefaultPlanExecutor.java:111)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph.executeWithServices(DefaultTaskExecutionGraph.java:138)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph.execute(DefaultTaskExecutionGraph.java:123)
at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:35)
at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:51)
at org.gradle.execution.BuildOperationFiringBuildWorkerExecutor$ExecuteTasks.call(BuildOperationFiringBuildWorkerExecutor.java:54)
at org.gradle.execution.BuildOperationFiringBuildWorkerExecutor$ExecuteTasks.call(BuildOperationFiringBuildWorkerExecutor.java:43)
at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:209)
at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:204)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:166)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:53)
at org.gradle.execution.BuildOperationFiringBuildWorkerExecutor.execute(BuildOperationFiringBuildWorkerExecutor.java:40)
at org.gradle.internal.build.DefaultBuildLifecycleController.lambda$executeTasks$10(DefaultBuildLifecycleController.java:313)
at org.gradle.internal.model.StateTransitionController.doTransition(StateTransitionController.java:266)
at org.gradle.internal.model.StateTransitionController.lambda$tryTransition$8(StateTransitionController.java:177)
at org.gradle.internal.work.DefaultSynchronizer.withLock(DefaultSynchronizer.java:46)
at org.gradle.internal.model.StateTransitionController.tryTransition(StateTransitionController.java:177)
at org.gradle.internal.build.DefaultBuildLifecycleController.executeTasks(DefaultBuildLifecycleController.java:304)
at org.gradle.internal.build.DefaultBuildWorkGraphController$DefaultBuildWorkGraph.runWork(DefaultBuildWorkGraphController.java:220)
at org.gradle.internal.work.DefaultWorkerLeaseService.withLocks(DefaultWorkerLeaseService.java:263)
at org.gradle.internal.work.DefaultWorkerLeaseService.runAsWorkerThread(DefaultWorkerLeaseService.java:127)
at org.gradle.composite.internal.DefaultBuildController.doRun(DefaultBuildController.java:181)
at org.gradle.composite.internal.DefaultBuildController.access$000(DefaultBuildController.java:50)
at org.gradle.composite.internal.DefaultBuildController$BuildOpRunnable.lambda$run$0(DefaultBuildController.java:198)
at org.gradle.internal.operations.CurrentBuildOperationRef.with(CurrentBuildOperationRef.java:85)
at org.gradle.composite.internal.DefaultBuildController$BuildOpRunnable.run(DefaultBuildController.java:198)
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
at org.gradle.internal.concurrent.AbstractManagedExecutor$1.run(AbstractManagedExecutor.java:48)
Caused by: org.gradle.workers.internal.DefaultWorkerExecutor$WorkExecutionException: A failure occurred while executing org.jetbrains.kotlin.compilerRunner.GradleCompilerRunnerWithWorkers$GradleKotlinCompilerWorkAction
at org.gradle.workers.internal.DefaultWorkerExecutor$WorkItemExecution.waitForCompletion(DefaultWorkerExecutor.java:287)
at org.gradle.internal.work.DefaultAsyncWorkTracker.lambda$waitForItemsAndGatherFailures$2(DefaultAsyncWorkTracker.java:130)
at org.gradle.internal.Factories$1.create(Factories.java:31)
at org.gradle.internal.work.DefaultWorkerLeaseService.withoutLocks(DefaultWorkerLeaseService.java:335)
at org.gradle.internal.work.DefaultWorkerLeaseService.withoutLocks(DefaultWorkerLeaseService.java:318)
at org.gradle.internal.work.DefaultWorkerLeaseService.withoutLock(DefaultWorkerLeaseService.java:323)
at org.gradle.internal.work.DefaultAsyncWorkTracker.waitForItemsAndGatherFailures(DefaultAsyncWorkTracker.java:126)
at org.gradle.internal.work.DefaultAsyncWorkTracker.waitForItemsAndGatherFailures(DefaultAsyncWorkTracker.java:92)
at org.gradle.internal.work.DefaultAsyncWorkTracker.waitForAll(DefaultAsyncWorkTracker.java:78)
at org.gradle.internal.work.DefaultAsyncWorkTracker.waitForCompletion(DefaultAsyncWorkTracker.java:66)
at org.gradle.api.internal.tasks.execution.TaskExecution$3.run(TaskExecution.java:252)
at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:29)
at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:26)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:166)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.run(DefaultBuildOperationRunner.java:47)
at org.gradle.api.internal.tasks.execution.TaskExecution.executeAction(TaskExecution.java:229)
at org.gradle.api.internal.tasks.execution.TaskExecution.executeActions(TaskExecution.java:212)
at org.gradle.api.internal.tasks.execution.TaskExecution.executeWithPreviousOutputFiles(TaskExecution.java:195)
at org.gradle.api.internal.tasks.execution.TaskExecution.execute(TaskExecution.java:162)
at org.gradle.internal.execution.steps.ExecuteStep.executeInternal(ExecuteStep.java:105)
at org.gradle.internal.execution.steps.ExecuteStep.access$000(ExecuteStep.java:44)
at org.gradle.internal.execution.steps.ExecuteStep$1.call(ExecuteStep.java:59)
at org.gradle.internal.execution.steps.ExecuteStep$1.call(ExecuteStep.java:56)
at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:209)
at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:204)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:166)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:53)
at org.gradle.internal.execution.steps.ExecuteStep.execute(ExecuteStep.java:56)
at org.gradle.internal.execution.steps.ExecuteStep.execute(ExecuteStep.java:44)
at org.gradle.internal.execution.steps.CancelExecutionStep.execute(CancelExecutionStep.java:42)
at org.gradle.internal.execution.steps.TimeoutStep.executeWithoutTimeout(TimeoutStep.java:75)
at org.gradle.internal.execution.steps.TimeoutStep.execute(TimeoutStep.java:55)
at org.gradle.internal.execution.steps.PreCreateOutputParentsStep.execute(PreCreateOutputParentsStep.java:50)
at org.gradle.internal.execution.steps.PreCreateOutputParentsStep.execute(PreCreateOutputParentsStep.java:28)
at org.gradle.internal.execution.steps.RemovePreviousOutputsStep.execute(RemovePreviousOutputsStep.java:67)
at org.gradle.internal.execution.steps.RemovePreviousOutputsStep.execute(RemovePreviousOutputsStep.java:37)
at org.gradle.internal.execution.steps.BroadcastChangingOutputsStep.execute(BroadcastChangingOutputsStep.java:61)
at org.gradle.internal.execution.steps.BroadcastChangingOutputsStep.execute(BroadcastChangingOutputsStep.java:26)
at org.gradle.internal.execution.steps.CaptureOutputsAfterExecutionStep.execute(CaptureOutputsAfterExecutionStep.java:69)
at org.gradle.internal.execution.steps.CaptureOutputsAfterExecutionStep.execute(CaptureOutputsAfterExecutionStep.java:46)
at org.gradle.internal.execution.steps.ResolveInputChangesStep.execute(ResolveInputChangesStep.java:40)
at org.gradle.internal.execution.steps.ResolveInputChangesStep.execute(ResolveInputChangesStep.java:29)
at org.gradle.internal.execution.steps.BuildCacheStep.executeWithoutCache(BuildCacheStep.java:189)
at org.gradle.internal.execution.steps.BuildCacheStep.lambda$execute$1(BuildCacheStep.java:75)
at org.gradle.internal.Either$Right.fold(Either.java:175)
at org.gradle.internal.execution.caching.CachingState.fold(CachingState.java:62)
at org.gradle.internal.execution.steps.BuildCacheStep.execute(BuildCacheStep.java:73)
at org.gradle.internal.execution.steps.BuildCacheStep.execute(BuildCacheStep.java:48)
at org.gradle.internal.execution.steps.StoreExecutionStateStep.execute(StoreExecutionStateStep.java:46)
at org.gradle.internal.execution.steps.StoreExecutionStateStep.execute(StoreExecutionStateStep.java:35)
at org.gradle.internal.execution.steps.SkipUpToDateStep.executeBecause(SkipUpToDateStep.java:75)
at org.gradle.internal.execution.steps.SkipUpToDateStep.lambda$execute$2(SkipUpToDateStep.java:53)
at org.gradle.internal.execution.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:53)
at org.gradle.internal.execution.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:35)
at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.execute(MarkSnapshottingInputsFinishedStep.java:37)
at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.execute(MarkSnapshottingInputsFinishedStep.java:27)
at org.gradle.internal.execution.steps.ResolveIncrementalCachingStateStep.executeDelegate(ResolveIncrementalCachingStateStep.java:49)
at org.gradle.internal.execution.steps.ResolveIncrementalCachingStateStep.executeDelegate(ResolveIncrementalCachingStateStep.java:27)
at org.gradle.internal.execution.steps.AbstractResolveCachingStateStep.execute(AbstractResolveCachingStateStep.java:71)
at org.gradle.internal.execution.steps.AbstractResolveCachingStateStep.execute(AbstractResolveCachingStateStep.java:39)
at org.gradle.internal.execution.steps.ResolveChangesStep.execute(ResolveChangesStep.java:65)
at org.gradle.internal.execution.steps.ResolveChangesStep.execute(ResolveChangesStep.java:36)
at org.gradle.internal.execution.steps.ValidateStep.execute(ValidateStep.java:107)
at org.gradle.internal.execution.steps.ValidateStep.execute(ValidateStep.java:56)
at org.gradle.internal.execution.steps.AbstractCaptureStateBeforeExecutionStep.execute(AbstractCaptureStateBeforeExecutionStep.java:64)
at org.gradle.internal.execution.steps.AbstractCaptureStateBeforeExecutionStep.execute(AbstractCaptureStateBeforeExecutionStep.java:43)
at org.gradle.internal.execution.steps.AbstractSkipEmptyWorkStep.executeWithNonEmptySources(AbstractSkipEmptyWorkStep.java:125)
at org.gradle.internal.execution.steps.AbstractSkipEmptyWorkStep.execute(AbstractSkipEmptyWorkStep.java:61)
at org.gradle.internal.execution.steps.AbstractSkipEmptyWorkStep.execute(AbstractSkipEmptyWorkStep.java:36)
at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsStartedStep.execute(MarkSnapshottingInputsStartedStep.java:38)
at org.gradle.internal.execution.steps.LoadPreviousExecutionStateStep.execute(LoadPreviousExecutionStateStep.java:36)
at org.gradle.internal.execution.steps.LoadPreviousExecutionStateStep.execute(LoadPreviousExecutionStateStep.java:23)
at org.gradle.internal.execution.steps.HandleStaleOutputsStep.execute(HandleStaleOutputsStep.java:75)
at org.gradle.internal.execution.steps.HandleStaleOutputsStep.execute(HandleStaleOutputsStep.java:41)
at org.gradle.internal.execution.steps.AssignMutableWorkspaceStep.lambda$execute$0(AssignMutableWorkspaceStep.java:35)
at org.gradle.api.internal.tasks.execution.TaskExecution$4.withWorkspace(TaskExecution.java:289)
at org.gradle.internal.execution.steps.AssignMutableWorkspaceStep.execute(AssignMutableWorkspaceStep.java:31)
at org.gradle.internal.execution.steps.AssignMutableWorkspaceStep.execute(AssignMutableWorkspaceStep.java:22)
at org.gradle.internal.execution.steps.ChoosePipelineStep.execute(ChoosePipelineStep.java:40)
at org.gradle.internal.execution.steps.ChoosePipelineStep.execute(ChoosePipelineStep.java:23)
at org.gradle.internal.execution.steps.ExecuteWorkBuildOperationFiringStep.lambda$execute$2(ExecuteWorkBuildOperationFiringStep.java:67)
at org.gradle.internal.execution.steps.ExecuteWorkBuildOperationFiringStep.execute(ExecuteWorkBuildOperationFiringStep.java:67)
at org.gradle.internal.execution.steps.ExecuteWorkBuildOperationFiringStep.execute(ExecuteWorkBuildOperationFiringStep.java:39)
at org.gradle.internal.execution.steps.IdentityCacheStep.execute(IdentityCacheStep.java:46)
at org.gradle.internal.execution.steps.IdentityCacheStep.execute(IdentityCacheStep.java:34)
at org.gradle.internal.execution.steps.IdentifyStep.execute(IdentifyStep.java:48)
at org.gradle.internal.execution.steps.IdentifyStep.execute(IdentifyStep.java:35)
at org.gradle.internal.execution.impl.DefaultExecutionEngine$1.execute(DefaultExecutionEngine.java:61)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeIfValid(ExecuteActionsTaskExecuter.java:127)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:116)
at org.gradle.api.internal.tasks.execution.FinalizePropertiesTaskExecuter.execute(FinalizePropertiesTaskExecuter.java:46)
at org.gradle.api.internal.tasks.execution.ResolveTaskExecutionModeExecuter.execute(ResolveTaskExecutionModeExecuter.java:51)
at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:57)
at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:74)
at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:36)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.executeTask(EventFiringTaskExecuter.java:77)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:55)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:52)
at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:209)
at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:204)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:166)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:53)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:52)
at org.gradle.execution.plan.LocalTaskNodeExecutor.execute(LocalTaskNodeExecutor.java:42)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:331)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:318)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.lambda$execute$0(DefaultTaskExecutionGraph.java:314)
at org.gradle.internal.operations.CurrentBuildOperationRef.with(CurrentBuildOperationRef.java:85)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:314)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:303)
at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.execute(DefaultPlanExecutor.java:459)
at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.run(DefaultPlanExecutor.java:376)
at org.gradle.execution.plan.DefaultPlanExecutor.process(DefaultPlanExecutor.java:111)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph.executeWithServices(DefaultTaskExecutionGraph.java:138)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph.execute(DefaultTaskExecutionGraph.java:123)
at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:35)
at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:51)
at org.gradle.execution.BuildOperationFiringBuildWorkerExecutor$ExecuteTasks.call(BuildOperationFiringBuildWorkerExecutor.java:54)
at org.gradle.execution.BuildOperationFiringBuildWorkerExecutor$ExecuteTasks.call(BuildOperationFiringBuildWorkerExecutor.java:43)
at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:209)
at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:204)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:166)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:53)
at org.gradle.execution.BuildOperationFiringBuildWorkerExecutor.execute(BuildOperationFiringBuildWorkerExecutor.java:40)
at org.gradle.internal.build.DefaultBuildLifecycleController.lambda$executeTasks$10(DefaultBuildLifecycleController.java:313)
at org.gradle.internal.model.StateTransitionController.doTransition(StateTransitionController.java:266)
at org.gradle.internal.model.StateTransitionController.lambda$tryTransition$8(StateTransitionController.java:177)
at org.gradle.internal.work.DefaultSynchronizer.withLock(DefaultSynchronizer.java:46)
at org.gradle.internal.model.StateTransitionController.tryTransition(StateTransitionController.java:177)
at org.gradle.internal.build.DefaultBuildLifecycleController.executeTasks(DefaultBuildLifecycleController.java:304)
at org.gradle.internal.build.DefaultBuildWorkGraphController$DefaultBuildWorkGraph.runWork(DefaultBuildWorkGraphController.java:220)
at org.gradle.internal.work.DefaultWorkerLeaseService.withLocks(DefaultWorkerLeaseService.java:263)
at org.gradle.internal.work.DefaultWorkerLeaseService.runAsWorkerThread(DefaultWorkerLeaseService.java:127)
at org.gradle.composite.internal.DefaultBuildController.doRun(DefaultBuildController.java:181)
at org.gradle.composite.internal.DefaultBuildController.access$000(DefaultBuildController.java:50)
at org.gradle.composite.internal.DefaultBuildController$BuildOpRunnable.lambda$run$0(DefaultBuildController.java:198)
at org.gradle.internal.operations.CurrentBuildOperationRef.with(CurrentBuildOperationRef.java:85)
at org.gradle.composite.internal.DefaultBuildController$BuildOpRunnable.run(DefaultBuildController.java:198)
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
at org.gradle.internal.concurrent.AbstractManagedExecutor$1.run(AbstractManagedExecutor.java:48)
Caused by: org.jetbrains.kotlin.gradle.tasks.CompilationErrorException: Compilation error. See log for more details
at org.jetbrains.kotlin.gradle.tasks.TasksUtilsKt.throwExceptionIfCompilationFailed(tasksUtils.kt:22)
at org.jetbrains.kotlin.compilerRunner.GradleKotlinCompilerWork.run(GradleKotlinCompilerWork.kt:144)
at org.jetbrains.kotlin.compilerRunner.GradleCompilerRunnerWithWorkers$GradleKotlinCompilerWorkAction.execute(GradleCompilerRunnerWithWorkers.kt:76)
at org.gradle.workers.internal.DefaultWorkerServer.execute(DefaultWorkerServer.java:63)
at org.gradle.workers.internal.NoIsolationWorkerFactory$1$1.create(NoIsolationWorkerFactory.java:66)
at org.gradle.workers.internal.NoIsolationWorkerFactory$1$1.create(NoIsolationWorkerFactory.java:62)
at org.gradle.internal.classloader.ClassLoaderUtils.executeInClassloader(ClassLoaderUtils.java:100)
at org.gradle.workers.internal.NoIsolationWorkerFactory$1.lambda$execute$0(NoIsolationWorkerFactory.java:62)
at org.gradle.workers.internal.AbstractWorker$1.call(AbstractWorker.java:44)
at org.gradle.workers.internal.AbstractWorker$1.call(AbstractWorker.java:41)
at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:209)
at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:204)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:166)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:53)
at org.gradle.workers.internal.AbstractWorker.executeWrappedInBuildOperation(AbstractWorker.java:41)
at org.gradle.workers.internal.NoIsolationWorkerFactory$1.execute(NoIsolationWorkerFactory.java:59)
at org.gradle.workers.internal.DefaultWorkerExecutor.lambda$submitWork$0(DefaultWorkerExecutor.java:174)
at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.runExecution(DefaultConditionalExecutionQueue.java:194)
at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.access$700(DefaultConditionalExecutionQueue.java:127)
at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner$1.run(DefaultConditionalExecutionQueue.java:169)
at org.gradle.internal.Factories$1.create(Factories.java:31)
at org.gradle.internal.work.DefaultWorkerLeaseService.withLocks(DefaultWorkerLeaseService.java:263)
at org.gradle.internal.work.DefaultWorkerLeaseService.runAsWorkerThread(DefaultWorkerLeaseService.java:127)
at org.gradle.internal.work.DefaultWorkerLeaseService.runAsWorkerThread(DefaultWorkerLeaseService.java:132)
at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.runBatch(DefaultConditionalExecutionQueue.java:164)
at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.run(DefaultConditionalExecutionQueue.java:133)
... 2 moreBUILD FAILED in 1m 36s
gradle build error: 1
uniapp-x下的tab组件的简单实现
<view class="tablist flex-row flex-wrap justify-between">
<text class="item t-center" :class="{'active': selectTab == index}" v-for="(item, index) in tablist" @click="changeTab(index)">{{item}}</text>
</view>
<swiper :indicator-dots="false" :autoplay="false" :current="selectTab" @change="changeEvent">
<swiper-item v-for="(item, index) in tablist">
<view class="swiper-item">
{{item}}
</view>
</swiper-item>
</swiper>
const selectTab = ref(0)
const tablist = ["内容1", "内容2", "内容3", "内容4"]
const changeTab = (index: number)=>{
selectTab.value = index
}
const changeEvent = (event: UniSwiperChangeEvent)=>{
selectTab.value = event.detail.current
}
<view class="tablist flex-row flex-wrap justify-between">
<text class="item t-center" :class="{'active': selectTab == index}" v-for="(item, index) in tablist" @click="changeTab(index)">{{item}}</text>
</view>
<swiper :indicator-dots="false" :autoplay="false" :current="selectTab" @change="changeEvent">
<swiper-item v-for="(item, index) in tablist">
<view class="swiper-item">
{{item}}
</view>
</swiper-item>
</swiper>
const selectTab = ref(0)
const tablist = ["内容1", "内容2", "内容3", "内容4"]
const changeTab = (index: number)=>{
selectTab.value = index
}
const changeEvent = (event: UniSwiperChangeEvent)=>{
selectTab.value = event.detail.current
}
收起阅读 »
基于flutter3.32+window_manager仿mac/wins桌面版os
flutter3-winchat:最新版原创flutter3.32+dart3.8+getx+window_manager+reorderables桌面端仿macOS/windows风格os实例。毛玻璃虚化背景、桌面栅格布局模板、Dock菜单可拖拽排序、自定义JSON配置桌面/dock菜单。
实现技术
- 跨平台框架:Flutter3.32+Dart3.8
- 窗口管理:window_manager^0.5.1
- 路由/状态管理:get^4.7.2
- 缓存服务:get_storage^2.1.1
- 拖拽排序:reorderables^0.6.0
- 图表组件:fl_chart^1.0.0
- 托盘管理:system_tray^2.0.3
项目框架结构
> ### flutter3-macos桌面端os系统已经更新到我的原创作品集。
> flutter3.32+window_manager桌面端OS系统
热文推荐
最新研发flutter3.27+bitsdojo_window+getx客户端仿微信聊天Exe应用
最新版Flutter3.32+Dart3.8跨平台仿微信app聊天界面|朋友圈
最新版uniapp+vue3+uv-ui跨三端短视频+直播+聊天【H5+小程序+App端】
原创uniapp+vue3+deepseek+uv-ui跨端实战仿deepseek/豆包流式ai聊天对话助手。
vue3-webseek网页版AI问答|Vite6+DeepSeek+Arco流式ai聊天打字效果
Electron35-DeepSeek桌面端AI系统|vue3.5+electron+arco客户端ai模板
uniapp+vue3聊天室|uni-app+vite4+uv-ui跨端仿微信app聊天语音/朋友圈
uniapp+vue3酒店预订|vite5+uniapp预约订房系统模板(h5+小程序+App端)
Electron32-Vue3OS桌面版os系统|vue3+electron+arco客户端OS管理模板
Tauri2.0+Vite5聊天室|vue3+tauri2+element-plus仿微信|tauri聊天应用
tauri2.0-admin桌面端后台系统|Tauri2+Vite5+ElementPlus管理后台EXE程序
flutter3-winchat:最新版原创flutter3.32+dart3.8+getx+window_manager+reorderables桌面端仿macOS/windows风格os实例。毛玻璃虚化背景、桌面栅格布局模板、Dock菜单可拖拽排序、自定义JSON配置桌面/dock菜单。
实现技术
- 跨平台框架:Flutter3.32+Dart3.8
- 窗口管理:window_manager^0.5.1
- 路由/状态管理:get^4.7.2
- 缓存服务:get_storage^2.1.1
- 拖拽排序:reorderables^0.6.0
- 图表组件:fl_chart^1.0.0
- 托盘管理:system_tray^2.0.3
项目框架结构
> ### flutter3-macos桌面端os系统已经更新到我的原创作品集。
> flutter3.32+window_manager桌面端OS系统
热文推荐
最新研发flutter3.27+bitsdojo_window+getx客户端仿微信聊天Exe应用
最新版Flutter3.32+Dart3.8跨平台仿微信app聊天界面|朋友圈
最新版uniapp+vue3+uv-ui跨三端短视频+直播+聊天【H5+小程序+App端】
原创uniapp+vue3+deepseek+uv-ui跨端实战仿deepseek/豆包流式ai聊天对话助手。
vue3-webseek网页版AI问答|Vite6+DeepSeek+Arco流式ai聊天打字效果
Electron35-DeepSeek桌面端AI系统|vue3.5+electron+arco客户端ai模板
uniapp+vue3聊天室|uni-app+vite4+uv-ui跨端仿微信app聊天语音/朋友圈
uniapp+vue3酒店预订|vite5+uniapp预约订房系统模板(h5+小程序+App端)
Electron32-Vue3OS桌面版os系统|vue3+electron+arco客户端OS管理模板
Tauri2.0+Vite5聊天室|vue3+tauri2+element-plus仿微信|tauri聊天应用
tauri2.0-admin桌面端后台系统|Tauri2+Vite5+ElementPlus管理后台EXE程序
canvasToTempFilePath:fail fail canvas is empty
关于uniapp x 使用了 uni.canvasToTempFilePath方法后无法得到路径的问题,通过一段时间的踩坑,终于解决了。
首先我们使用uniapp x的时候,大概率是使用uni.createCanvasContextAsync 方法,然后画完之后,就需要导出图片,这时候如果按照 uni.canvasToTempFilePath 方法去导出,我遇到了 “canvasToTempFilePath:fail fail canvas is empty” 报错,可我明明是使用了官方的方法去传入变量啊。下列就是代码实现过程:
uni.createSelectorQuery().select('#lastCanvas').fields({
node:true
},(res)=>{
console.log(res);
}).exec((ret)=>{
console.log(ret);
uni.canvasToTempFilePath({
canvasId:"lastCanvas",
canvas:ret[0].node,
success:function(res){
console.log(res)
},
fail:function(err){
console.log(err)
}
},this);
});
我们先去找到元素的node,然后把它塞进去canvas, 就能拿到我们的导出图片了。
真的是又又又踩坑了。
关于uniapp x 使用了 uni.canvasToTempFilePath方法后无法得到路径的问题,通过一段时间的踩坑,终于解决了。
首先我们使用uniapp x的时候,大概率是使用uni.createCanvasContextAsync 方法,然后画完之后,就需要导出图片,这时候如果按照 uni.canvasToTempFilePath 方法去导出,我遇到了 “canvasToTempFilePath:fail fail canvas is empty” 报错,可我明明是使用了官方的方法去传入变量啊。下列就是代码实现过程:
uni.createSelectorQuery().select('#lastCanvas').fields({
node:true
},(res)=>{
console.log(res);
}).exec((ret)=>{
console.log(ret);
uni.canvasToTempFilePath({
canvasId:"lastCanvas",
canvas:ret[0].node,
success:function(res){
console.log(res)
},
fail:function(err){
console.log(err)
}
},this);
});
我们先去找到元素的node,然后把它塞进去canvas, 就能拿到我们的导出图片了。
真的是又又又踩坑了。



































