gpt4 book ai didi

java - 从 Kotlin 调用 Java 代码时出现 NoClassDefFoundError 异常

转载 作者:行者123 更新时间:2023-12-05 08:19:50 35 4
gpt4 key购买 nike

我在其中创建了一个 Kotlin 项目和 Java 类:

package text;

public class StringUtils {

public static void filter(boolean flag) {
System.out.println("Flag is " + flag);
}
}

然后我尝试从 Kotlin 代码调用 filter 方法:

val exists = true;
StringUtils.filter(exists)

我在我的 Intellij IDE 中没有看到任何错误,但在运行时我遇到了一个异常:

Exception in thread "main" java.lang.NoClassDefFoundError: text/StringUtils
at Person.printName(Person.kt:66)
at PersonKt.main(Person.kt:103)
at PersonKt.main(Person.kt)
Caused by: java.lang.ClassNotFoundException: text.StringUtils
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:606)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:168)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
... 3 more
  • Kotlin 编译器:1.4.30
  • IDE:Intellij 2020.3.2
  • JDK:15.0.1

最佳答案

您必须将所有 Java 类放在 src/main/java 下,而不是 src/main/kotlin 下。

只需右键单击 main -> new -> directory -> 选择 java(或键入它)。

关于java - 从 Kotlin 调用 Java 代码时出现 NoClassDefFoundError 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66086381/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com