No se pudo encontrar org.jetbrains.kotlinx: kotlinx-html: 0.6.4

Estoy tratando de probar la aplicación HTML, mis dependencies build.gradle son:

 dependencies { compile "org.jetbrains.kotlin:kotlin-stdlib-jre8:$kotlin_version" compile "org.jetbrains.ktor:ktor-core:$ktor_version" compile 'org.jetbrains.kotlinx:kotlinx-html:0.6.4' compile "org.jetbrains.ktor:ktor-netty:$ktor_version" compile "org.apache.commons:commons-email:1.4" compile "org.slf4j:slf4j-simple:1.7.25" compile "ch.qos.logback:logback-classic:1.2.1" testCompile group: 'junit', name: 'junit', version: '4.12' } 

Obtuve el siguiente error mientras ejecutaba la creación de gradle:

No se pudo encontrar org.jetbrains.kotlinx: kotlinx-html: 0.6.4

¿Cuál es el error aquí?

Aquí puede encontrar instrucciones sobre cómo include kotlinx. Lo que necesita hacer es agregar el repository apropiado:

 repository { jcenter() } 

y dependencies:

 dependencies { compile 'org.jetbrains.kotlinx:kotlinx-html-jvm:0.6.4' // server side dev compile 'org.jetbrains.kotlinx:kotlinx-html-js:0.6.4' // client side dev } 

Gracias a @Opal, profundizando aún más después de su respuesta, y descubrí que puedo usar ktor-html-builder , por lo que mi código se convirtió en esto:

gradle.build :

 group 'Example' version 'alpha' buildscript { ext.kotlin_version = '1.1.4-3' ext.ktor_version = '0.4.0' repositories { mavenCentral() } dependencies { classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } apply plugin: 'java' apply plugin: 'kotlin' sourceCompatibility = 1.8 repositories { jcenter() mavenCentral() maven { url "http://dl.bintray.com/kotlin/ktor" } maven { url "https://dl.bintray.com/kotlin/kotlinx" } } dependencies { compile "org.jetbrains.kotlin:kotlin-stdlib-jre8:$kotlin_version" compile "org.jetbrains.ktor:ktor-core:$ktor_version" compile "org.jetbrains.ktor:ktor-netty:$ktor_version" compile "org.jetbrains.ktor:ktor-html-builder:$ktor_version" compile "org.apache.commons:commons-email:1.4" compile "org.slf4j:slf4j-simple:1.7.25" compile "ch.qos.logback:logback-classic:1.2.1" testCompile group: 'junit', name: 'junit', version: '4.12' } compileKotlin { kotlinOptions.jvmTarget = "1.8" } compileTestKotlin { kotlinOptions.jvmTarget = "1.8" } kotlin { experimental { coroutines "enable" } } jar { baseName 'abc' manifest { attributes 'Main-Class': 'blog.BlogAppKt' } from { configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } } } 

Y el BlogApp.tk convirtió en:

 package blog import kotlinx.html.* import org.jetbrains.ktor.host.* // for embededServer import org.jetbrains.ktor.netty.* // for Netty import org.jetbrains.ktor.application.* import org.jetbrains.ktor.features.* import org.jetbrains.ktor.html.* import org.jetbrains.ktor.routing.* fun Application.module() { install(DefaultHeaders) install(CallLogging) install(Routing) { get("/") { call.respondHtml { head { title { +"HTML Application" } } body { h1 { +"Sample application with HTML builders" } widget { +"Widgets are just functions" } } } } } } fun FlowContent.widget(body: FlowContent.() -> Unit) { div { body() } } fun main(args: Array<String>) { embeddedServer(Netty, 8080, watchPaths = listOf("BlogAppKt"), module = Application::module).start() } 
  • Cómo crear .jar (Create Executable) del server embedded de Ktor