在 github 操作 CI 上构建 kotlinJs 应用
building kotlinJs app on github actions CI
我在设置 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 库已构建并作为资源复制到 jar
https://github.com/sentinelweb/cuer/blob/ab00c7a7cd969eafa72b0d28bc5ba5c5c3e099d3/.github/workflows/android.yml
下面是依赖树 - 删除 jsMain
依赖 kotlinx-serialization-kotlinx-serialization-core-jslegacy
导致运行时/webpack 错误 - 所以我不确定在 kjs 运行时在哪里创建这个依赖 - 但可能它有通过使用其他一些库来删除。只是删除它会破坏 runtime/webpack though
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 0.2.1 的 kotlin-datetime 中旧版本的 kotlin-serialization 依赖关系修复了它
我在设置 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 库已构建并作为资源复制到 jar https://github.com/sentinelweb/cuer/blob/ab00c7a7cd969eafa72b0d28bc5ba5c5c3e099d3/.github/workflows/android.yml
下面是依赖树 - 删除 jsMain
依赖 kotlinx-serialization-kotlinx-serialization-core-jslegacy
导致运行时/webpack 错误 - 所以我不确定在 kjs 运行时在哪里创建这个依赖 - 但可能它有通过使用其他一些库来删除。只是删除它会破坏 runtime/webpack though
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 0.2.1 的 kotlin-datetime 中旧版本的 kotlin-serialization 依赖关系修复了它