ktor运行的胖罐引发java.lang.UnsupportedOperationException :: Kotlin反射尚不支持程序包和文件外观

时间:2019-01-21 02:23:31

标签: kotlin ktor

下面是基本的ktor文件,该文件可以从IDE正常运行,但是我使用“ mvn install”创建了一个胖jar文件,运行该文件会引发以下异常:

线程“主”中的异常java.lang.UnsupportedOperationException:Kotlin反射尚不支持程序包和文件外观。同时,请使用Java反射检查此类:com.tech.ApplicationKt

fun main(args: Array<String>){
    embeddedServer(Netty, 8080){
        routing{
            get("/demo"){
                call.respondText("Hello demo")
            }
        }
    }.start(wait = true)
}

我尝试在Java 11和8上执行jar,但是遇到了同样的异常。

1 个答案:

答案 0 :(得分:1)

我只是按照ktor.io上的官方指南进行了尝试,以使用Maven进行设置。

然后,我跟随https://ktor.io/servers/deploy/packing/fatjar.html#fat-jar-maven进行jar编译。

我遇到了2个问题:

  1. 我首先在IntelliJ Maven侧栏中尝试了D任务,但实际上您必须使用生命周期方法install:install或仅使用install
  2. 我必须调整maven程序集插件的package属性以匹配我自己的属性,例如mainClass或您的文件名。

一旦我修复了这两个问题,一切都会很好。

如果仍有问题,请告诉我们您的构建文件。