如何解决在 github 操作 CI 上构建 kotlinJs 应用程序
我在设置 github 操作以构建我的 kotlinjs 项目时遇到了一些问题? 我有 js 运行时依赖:
implementation(npm("kotlinx-serialization-kotlinx-serialization-core-jslegacy","1.4.2-RC1"))
我得到错误:
Module 'kotlinx-serialization-kotlinx-serialization-core-jsLegacy' not found
> Task :remote:jsbrowserDevelopmentWebpack
我是否必须安装 npm(或某些源代码)才能在 github 操作上执行此操作?或者我需要使用一些 github 操作来在 github 操作上构建 kotlinjs 吗?这是我的 github 操作 yaml - js lib 已构建并作为资源复制到 jar 中 https://github.com/sentinelweb/cuer/blob/ab00c7a7cd969eafa72b0d28bc5ba5c5c3e099d3/.github/workflows/android.yml
下面是依赖树 - 删除 jsMain
依赖 kotlinx-serialization-kotlinx-serialization-core-jslegacy
会导致运行时/webpack 错误 - 所以我不确定在 kjs 运行时中创建这个依赖的位置 - 但它可能必须是通过使用其他一些库删除。只是删除它会破坏运行时/ webpack
val commonMain by getting {
dependencies {
implementation(project(":shared"))
implementation("org.jetbrains.kotlinx:kotlinx-datetime:$ver_kotlinx_datetime")
implementation("org.jetbrains.kotlinx:kotlinx-serialization-core:$ver_kotlinx_serialization_core")
implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:$ver_kotlinx_serialization_core")
implementation("io.ktor:ktor-client-core:$ver_ktor")
implementation("io.insert-koin:koin-core:$ver_koin")
}
}
val jsMain by getting {
dependencies {
implementation("org.jetbrains.kotlinx:kotlinx-datetime-js:$ver_kotlinx_datetime")
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:$ver_coroutines_core")
implementation("org.jetbrains:kotlin-react:$ver_kotlin_react")
implementation("org.jetbrains:kotlin-react-dom:$ver_kotlin_react")
implementation("org.jetbrains:kotlin-styled:$ver_kotlin_styled")
implementation(npm("react-youtube-lite","1.0.1"))
implementation(npm("react-share","~4.2.1"))
// todo shouldn't be need but breaks build runtime/webpack
implementation(npm("kotlinx-serialization-kotlinx-serialization-core-jslegacy","1.4.2-RC1"))
}
}
解决方法
看起来这是由于 kotlin-datetime 更新到 kotlin-datetime 0.2.1 修复了旧版本的 kotlin-serialization 依赖
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。