相关疑难解决方法(0)

如何在运行时加载jar文件

我被要求构建一个能够在运行时加载新代码(扩展)的java系统.在代码运行时如何重新加载jar文件?或者我如何装一个新的罐子?

显然,由于恒定的正常运行时间很重要,我想添加在其中重新加载现有类的能力(如果它不会使事情复杂化太多).

我应该注意什么?(把它想象成两个不同的问题 - 一个关于在运行时重新加载类,另一个关于添加新类).

java runtime jar classloader

72
推荐指数
3
解决办法
15万
查看次数

如何使用 Google 反射库扫描在运行时加载的 JAR?

是否有配置反射库的解决方案,以便它也扫描在运行时使用 URLClassLoader 添加的 JAR?

现在,反射只是扫描 ClassLoader 中的 URL。这是我现在使用的配置:

Reflections reflections = new Reflections(new ConfigurationBuilder().setUrls(ClasspathHelper.forClassLoader()));
Run Code Online (Sandbox Code Playgroud)

我在反射库的文档中找不到任何提示。

编辑: 这就是我加载 jar 文件的方式:

File f = new File("C:/Users/mkorsch/Desktop/test-reflections.jar");
URLClassLoader urlCl = new URLClassLoader(new URL[] {f.toURI().toURL()},System.class.getClassLoader());
Run Code Online (Sandbox Code Playgroud)

java runtime classloader reflections

4
推荐指数
1
解决办法
3765
查看次数

标签 统计

classloader ×2

java ×2

runtime ×2

jar ×1

reflections ×1