调用方法时出错 - java.lang.RuntimeException:无法编译的源代码 - 错误的树类型:<any>

时间:2015-06-20 04:20:40

标签: java

我一直在研究我之前在this question中描述的项目。我试图从类中调用一个方法,该类的名称是动态生成的(并且在程序运行时编译该类)。我在方法Class watchFace = Class.forName("pebbleos.PebbleOS_" + fileName);中调用currentWatchFace = watchFace.newInstance();后跟loadWatchFace(),然后在方法runWatchFace()中调用该方法:

Method method = null;
        try {
            method = currentWatchFace.getClass().getMethod("initializeFace");
        } catch (SecurityException | NoSuchMethodException e) {
            System.out.println("Error");
        }
        method.invoke(currentWatchFace);

我的表盘代码是从文本文件中获取的,如下所示:

package pebbleos;

public class PebbleOS_Default {

    public PebbleOS_Default () {

    }

    public void initializeFace() {
        System.out.println(“Hello World”);
    }

}

请注意,上面的内容应该是&#34;原因&#34;此错误:java.lang.reflect.InvocationTargetException

1 个答案:

答案 0 :(得分:1)

根据您发布的代码,您似乎使用了与非常相似的错误字符",但它们并不相同。修复它,重新编译代码然后再试一次。