//动态编译
URL xUrl = dynamicCompilation(name, scriptPath);
//通过反射方法动态执行
//1、首先构建文件的目录url地址,
URL[] urls = new URL[]{xUrl};
//2、使用URLClassLoader对象的loadClass方法加载对应类
URLClassLoader loder = new URLClassLoader(urls);
clazz = loder.loadClass("file.path" + className);
手动调用的时候,urls 的路径必须是 file.path 路径的父路径
应用程序自动调用的时候 如果 urls 已经 包含了file.path 也就是class 的加载路径 变成了 file.path.file.path.className 依旧可以加载到 file.path 下的 class 文件
本文介绍了如何使用Java的动态编译功能,通过URLClassLoader动态加载类,特别关注了手动和应用程序自动调用时URL路径的处理。重点在于URLClassLoader如何加载指定路径的class文件,以及file.path路径的处理策略。

被折叠的 条评论
为什么被折叠?



