我在kotlin编程语言中使用spring boot 2.0。在我的项目中,我使用Java类和Kotlin类,但是当我使用gradle构建项目并在终端上运行以下命令时
java -jar my_springboot_kotlin_gradle_project
&安培;我收到了这样的错误
引起:java.lang.ClassNotFoundException:
com.example.components.utils.EncryptionUtils at java.net.URLClassLoader.findClass(URLClassLoader.java:381) 〜[na:1.8.0_171] at java.lang.ClassLoader.loadClass(ClassLoader.java:424)〜[na:1.8.0_171] 在 org.springframework.boot.loader.LaunchedURLClassLoader.loadClass(LaunchedURLClas sLoader.java:93)〜[myapp-0.0.1-SNAPSHOT.jar:na] at java.lang.ClassLoader.loadClass(ClassLoader.java:357)〜[na:1.8.0_171] ...省略了15个常见帧
如果我在kotlin spring bean中使用java spring bean,则spring boot无法自动装配java bean。
答案 0 :(得分:0)
如果你发布游览gradle
文件会很好。尽管这是我的观察,但您需要在使用maven or gradle
创建/构建时将类路径添加到应用程序jar中。这称为 Fat JAR。
jar {
manifest {
attributes 'Main-Class': 'com.test.example.MainKt' // add your main class path
}
// check this line / task properly
from { configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } }
}
有关详细信息,请参阅此Medium链接。