UrlClassLoader在appengine中没有按预期工作

时间:2014-10-30 06:30:31

标签: java google-app-engine urlclassloader

我正在将一个JAR上传到appengine blobstore,然后尝试使用该jar加载一个类。

jarURL = new URL("http://giffycrm.appspot.com/serve?blob-key="+blobKey);
        System.err.println("jarURL : "+jarURL);
        ClassLoader loader = URLClassLoader.newInstance(
                new URL[] { jarURL },
                //getClass().getClassLoader()
                JarUtils.class.getClassLoader()
                );
        System.err.println("ClassLoader : "+loader);
        Class<?> clazz = null;
        try {
            //clazz = Class.forName(className, true, loader);
            clazz = loader.loadClass(className);
            System.err.println("clazz : "+clazz);
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }

        Object o = clazz.newInstance();
        System.err.println("Object create : "+o);
        Method m = clazz.getMethod(methodName, String.class);
        System.err.println("Method Called : "+m.getName());
        String returnVal = (String) m.invoke(o, "jude");
        System.err.println("return value : "+returnVal);

该行未在此行加载:clazz = loader.loadClass(className);

任何指针都会有所帮助。

0 个答案:

没有答案