加载本地jar到系统中

java javafx 文章 2022-03-04 22:43 828 0 全屏看文

AI助手支持GPT4.0

public static void addJarByLibs() {
	try {
		// 系统类库路径
		File libPath = new File("libs/");
		// 获取所有的.jar和.zip文件
		File[] jarFiles = libPath.listFiles(
				(dir, name) -> name.endsWith(".jar")
		);
		if (jarFiles != null) {
			for (File file : jarFiles) {
				if (!PluginManageService.isPluginEnabled(file.getName())) {
					continue;
				}
				addJarClass(file);
			}
		}
		PluginManager.getInstance().loadLocalPlugins();
	} catch (Exception e) {
		log.error("添加libs中jar包到系统中异常:", e);
	}
}

public static void addJarClass(File jarFile) {
	try {
		log.info("Reading lib file: " + jarFile.getName());
		Method method = URLClassLoader.class.getDeclaredMethod("addURL", URL.class);
		method.setAccessible(true); // 设置方法的访问权限
		// 获取系统类加载器
		URLClassLoader classLoader = (URLClassLoader) ClassLoader.getSystemClassLoader();
		URL url = jarFile.toURI().toURL();
		method.invoke(classLoader, url);
	} catch (Exception e) {
		log.error("添加libs中jar包到系统中异常:", e);
	}
}

代码来自gitee开源项目 xJavaFxTool

-EOF-

AI助手支持GPT4.0


国内超级便宜服务器

摸鱼人热门新闻聚合

钻级赞助商 我要加入

开发者在线工具

第三方支付技术请加QQ群

相关文章
Java泛型之泛型方法简介说明
SpringBoot(14)JDBCTemplate
jvm类加载过程简介说明
Java使用HttpClient进行HTTP代理
程序控制
随便看看
教育科技公司申请微信支付被拒绝? 4695
微信公众号免300认证教程 5776
小程序已经上线,作为管理员无法在小程序数据助手查看数据? 5187
小程序广告组件通过审核,但是小程序内没有显示广告? 4962
企业微信通讯录账号被管理员误/恶意删除,怎么办? 9389
问题? 8910
如何快速搭建抽奖助手小程序(无需代码知识) 6040
许涛 大哥在吗, 要解冻小程序的时候提示信息主体不一致, 能帮忙看下吗? 7344
小程序搜一搜全称搜索不显示 麻烦解决一下!谢谢 6671
我的小程序广告收款主体是个体工商户,每个月邮寄两次发票很是麻烦,我年底的时候打包邮寄一次可以么? 5999