gpt4 book ai didi

java - NoSuchMethodFound 异常

转载 作者:行者123 更新时间:2023-11-30 04:20:53 25 4
gpt4 key购买 nike

我不断收到此错误消息:

06-13 18:53:33.839: W/System.err(19893): java.lang.NoSuchMethodException: showIt
06-13 18:53:33.839: W/System.err(19893): at java.lang.ClassCache.findMethodByName(ClassCache.java:247)
06-13 18:53:33.839: W/System.err(19893): at java.lang.Class.getDeclaredMethod(Class.java:731)

我确信我的方法存在,我尝试从异步任务中开始。方法是这样的:

public static void showIt(String[] result) {

这是我尝试过的代码:

try {
Class<?> p = Class.forName(executeClass);
Object t = p.newInstance();

Method m = p.getDeclaredMethod(executeMethod, p);
m.invoke(t, result);
} catch (Exception e) {
e.printStackTrace();
}

最佳答案

三个问题...

  • getDeclaredMethod 第二个参数必须是 showIt 方法的参数类数组。

  • 由于该方法是静态的,因此将对象传递给调用方法的第一个参数是没有用的。

  • 由于调用方法是可变参数,因此必须将结果包装到 Object[] 中才能以异常方式传递。

最后,这是一个工作代码片段。

String[] result = new String[] { "res" };
Class<?> p = Class.forName(executeClass);

Method m = p.getDeclaredMethod("showIt", result.getClass());
m.invoke(null, new Object[] {result});

关于java - NoSuchMethodFound 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17092844/

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