簡體   English   中英

如何分發 Kotlin CLI 應用程序?

[英]How to distribute a Kotlin CLI application?

我在 Kotlin 中構建了一個小型機器人。

它已經完成,我可以從我的開發人員工具中運行它。 我正在使用application插件嘗試分發,但一直失敗。

./gradlew run按預期運行機器人。

我一直在尋找類似./gradlew installDist的東西,然后只運行installationDir/bin/App (類似於 Ktor 應用程序)並運行該應用程序。 但是當我應該看到很多日志記錄 output 時,它只是在沒有 output 的情況下成功退出。

我究竟做錯了什么?

// gradle.build.kts
import org.jetbrains.kotlin.gradle.plugin.statistics.ReportStatisticsToElasticSearch.url
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile

plugins {
    kotlin("jvm") version "1.5.31"
    kotlin("plugin.serialization") version "1.5.31"
    application
}

group = "me.nanospicer"
version = "1.0"

repositories {
    mavenCentral()
    maven {
        url = uri("https://jitpack.io")
    }
}


tasks.withType<KotlinCompile>() {
    kotlinOptions.jvmTarget = "1.8"
}

application {
    mainClass.set("MainKt")
}

val ktor_version="1.6.5"
dependencies {
    implementation("ch.qos.logback:logback-classic:1.2.7")
    implementation("io.ktor:ktor-client-core:$ktor_version")
    implementation("io.ktor:ktor-client-cio:$ktor_version")
    implementation("io.ktor:ktor-client-serialization:$ktor_version")
    implementation("io.ktor:ktor-client-logging:$ktor_version")
    implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.3.1")
}
  • 好消息:我的問題上發布的設置完美無缺。
  • 壞消息:我的代碼沒有。

我有一個服務器上不存在的文件,並且部分代碼返回null因此應用程序將在沒有任何 output 的情況下退出,因為由於文件不存在,它不會做任何事情。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM