java指定目录下的jar加到classloader中

List<URL> libUrls = new ArrayList<URL>();
// contract依赖的所有jar,加到classloader的classpath中
File libPath = new File(Const.ROOT_TESTCASES_PATH + File.separator + Const.SERVICE_PREFIX + serviceName + "/lib");
// 目录下所有的jar文件加到libUrs中
for (File jar : libPath.listFiles()) {
    libUrls.add(jar.toURI().toURL());
}
//Creates a new instance of URLClassLoader for the specified URLs and parent class loader. If a security manager is installed, the loadClass method of the URLClassLoader returned by this method will invoke the SecurityManager.checkPackageAccess method before loading the class.
ClassLoader loader = URLClassLoader.newInstance((URL[]) libUrls.toArray(new URL[libUrls.size()]),
 getClass().getClassLoader());
Class<?> clazz = Class.forName(clazzPath, true, loader);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值