如何用Gradle编译客户端模块的Kotlin域模块?

我有以下项目结构:
parent
client (用Kotlin编写但是编译成JS)
– – server (写在Kotlin)
– – model (写在Kotlin)
client模块依赖于model 。 所以当我编译client JS它也应该与它编译model 。 现在我有下面的Gradle配置没有做所需的事情:

项目/ parent.gradle

 group 'com.vchernogorov.tycher' version '1.0-SNAPSHOT' buildscript { ext.kotlin_version = '1.1.3-2' repositories { mavenCentral() } dependencies { classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } apply plugin: 'kotlin' repositories { mavenCentral() } dependencies { compile "org.jetbrains.kotlin:kotlin-stdlib-jre8:$kotlin_version" compile project(":model") compile project(":client") compile project(":server") } compileKotlin { kotlinOptions.jvmTarget = "1.8" } compileTestKotlin { kotlinOptions.jvmTarget = "1.8" } 

项目/ settings.gradle

 rootProject.name = 'parent' include ':model' include ':server' include ':client' 

项目/型号/的build.gradle

 group 'com.vchernogorov.tycher' version '1.0-SNAPSHOT' buildscript { ext.kotlin_version = '1.1.3-2' repositories { mavenCentral() } dependencies { classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } apply plugin: 'kotlin' repositories { mavenCentral() } dependencies { compile "org.jetbrains.kotlin:kotlin-stdlib-jre8:$kotlin_version" } compileKotlin { kotlinOptions.jvmTarget = "1.8" } compileTestKotlin { kotlinOptions.jvmTarget = "1.8" } 

项目/客户/的build.gradle

 group 'com.vchernogorov.tycher' version '1.0-SNAPSHOT' buildscript { ext.kotlin_version = '1.1.3-2' repositories { mavenCentral() } dependencies { classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } apply plugin: 'kotlin2js' repositories { mavenCentral() } dependencies { compile "org.jetbrains.kotlin:kotlin-stdlib-js:$kotlin_version" compile project(":model") } build.doLast { configurations.compile.each { File file -> copy { includeEmptyDirs = false from zipTree(file.absolutePath) into "${projectDir}/web" include { fileTreeElement -> def path = fileTreeElement.path path.endsWith(".js") && (path.startsWith("META-INF/resources/") || !path.startsWith("META-INF/")) } } } } 

当我在client上运行gradle build命令时,我收到以下消息:

 :model:compileKotlin Using kotlin incremental compilation :model:compileJava UP-TO-DATE :model:copyMainKotlinClasses :model:processResources UP-TO-DATE :model:classes UP-TO-DATE :model:jar :client:compileJava UP-TO-DATE :client:compileKotlin2Js e: project/client/src/main/kotlin/HelloWorld.kt: (30, 19): Unresolved reference: Position e: project/client/src/main/kotlin/HelloWorld.kt: (50, 5): Unresolved reference: Test e: project/client/src/main/kotlin/SocketHandler.kt: (10, 36): Unresolved reference: User :client:compileKotlin2Js FAILED FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':client:compileKotlin2Js'. > Compilation error. See log for more details * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. BUILD FAILED Total time: 13.891 secs 

这三个类是在model中定义的。
那么我应该怎么做才能成功编译client而不是更改代码呢?