kotlin中调用java的静态方法报错: NoClassDefFoundError

kotlin代码:

fun main() {

    // 调用java类的方法
    val defFun = JBaseTest03.defFun()
    println(defFun)

}

image.png

java代码:

public class JBaseTest03 {

    // 给kotlin调用的方法
    public static String defFun() {
        return "def";
    }

}

image.png

异常:

Connected to the target VM, address: '127.0.0.1:13844', transport: 'socket'
Exception in thread "main" java.lang.NoClassDefFoundError: top/rxiao/hahahehegaga/base/JBaseTest03
    at top.rxiao.hahahehegaga.base.BaseTest03Kt.main(BaseTest03.kt:13)
    at top.rxiao.hahahehegaga.base.BaseTest03Kt.main(BaseTest03.kt)
Caused by: java.lang.ClassNotFoundException: top.rxiao.hahahehegaga.base.JBaseTest03
    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
    at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
    ... 2 more
Disconnected from the target VM, address: '127.0.0.1:13844', transport: 'socket'

Process finished with exit code 1

image.png

完整操作:

阅读 3.8k
1 个回答
新手上路,请多包涵


我这试了一下可以正常运行,你看看java包路径对不对或者重新编译试试

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题