我已经建立了一个带有公共模块和ktor模块的多模块gradle项目。
常用模块是kotlin跨平台库。
当我从Intellij运行它时,我希望能够提供从ktor服务器从公共库生成的javascript文件。
目前,ktor已设置为将资源作为静态内容提供:
static("/static") {
resources()
}
ktor模块依赖于公共模块:
dependencies {
compile project(':common')
...
}
我认为在Intellij中运行时,能够浏览到http://localhost:8080/static/common.js来检索通用模块JS构建的输出(写到common \ build \ classes \ kotlin \ js \ main),但这不是工作。
答案 0 :(得分:2)
通过包括复制任务来解决此问题。请注意,此处(https://github.com/ktorio/ktor-samples/tree/master/mpp/fullstack-mpp)的kotlin全栈mpp有使用Webpack输出的示例。
kotlin {
jvm() {
task copyJsToJvm(type: Copy) {
from("$buildDir/classes/kotlin/js/main")
include '*.*'
into "$buildDir/classes/kotlin/jvm/main"
}
compilations.main {
tasks.getByName(processResourcesTaskName) {
dependsOn(copyJsToJvm)
}
}
}
...
}