我正在用Kotlin学习Spring Boot,这是我的第一个应用程序。我已经用STS创建了一个入门项目,但是我无法运行它。我收到以下错误:
Error: Could not find or load main class Caused by: java.lang.ClassNotFoundException:
以下是我的应用程序设置:
有人可以帮帮我吗?
控制台:
最佳答案
在build.gralde.kt
中检查对主类的引用是否正确:
mainClassName = 'TheMenschenApplicationKt'
您甚至可能在这里需要一个完全限定的名称。这是TheMenschenApplicationKt中的高K。
这是必需的,因为Kotlin编译为Java字节码的方式。 Kotlin中的
fun main()
函数未附加到任何类,但是Java始终需要一个类,并且不支持无类函数。Kotlin编译器必须创建一个Java类。因为您已经定义了一个
Application
类,所以它为Kotlin文件Kt
中的函数创建了一个带有后缀com/themenschen/app/TheMenschenApplication.kt
的类。您必须设置此类,以便JVM可以找到它。顺便说一句,Jar文件只是一个Zip文件,您可以将其解压缩并亲自查看ApplicationKt.class是否存在。
关于spring - 错误:在Spring Boot Kotlin新项目中找不到或加载主类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60009288/