为了账号安全,请及时绑定邮箱和手机立即绑定

如何在运行时加载JAR文件

如何在运行时加载JAR文件

互换的青春 2019-07-06 15:58:03
如何在运行时加载JAR文件我被要求构建一个Java系统,它能够在运行时加载新代码(扩展)。如何在代码运行时重新加载JAR文件?或者如何装入一个新的罐子?显然,由于持续的启动时间很重要,我想在它的同时添加重新加载现有类的能力(如果它不太复杂的话)。我该注意什么?(把它看作两个不同的问题-一个是关于在运行时重新加载类,另一个是关于添加新类)。
查看完整描述

3 回答

?
aluckdog

TA贡献1847条经验 获得超7个赞

这对我有用:

File file  = new File("c:\\myjar.jar");URL url = file.toURL();  URL[] urls = new URL[]{url};
ClassLoader cl = new URLClassLoader(urls);Class cls = cl.loadClass("com.mypackage.myclass");


查看完整回答
反对 回复 2019-07-06
?
千巷猫影

TA贡献1829条经验 获得超7个赞

我被要求构建一个java系统,它能够在运行时加载新代码。

你可能想把你的系统建立在OSGi(或者至少花了很多时间),这正是为这种情况而做的。

处理类加载器是一项非常棘手的工作,主要是因为类的可见性是如何工作的,而且您以后也不希望遇到难以调试的问题。例如,Class.forName(),它在许多库中被广泛使用,但在支离破碎的类加载器空间中不能很好地工作。


查看完整回答
反对 回复 2019-07-06
  • 3 回答
  • 0 关注
  • 803 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号