java - 类路径中的远程 jar

标签 java classpath classloader remoteobject

对不起,也许这个问题太傻了或者已经回答了,但我找不到。

我想知道是否有一些已知的 Java 类加载器能够在类路径中接受远程文件,即像 CLASSPATH="http://somewhere.net/library.jar:..."这样的条目.

请注意,我不是在谈论小程序或 Java Web Start。考虑一个可以使用不同后端(例如 MySQL、Oracle)的应用程序,我想根据用户的后端偏好在 shell 脚本中准备类路径,并让类加载器下载所需的从分发服务器下载 jar(本例中的 jdbc 驱动程序)。我也不是在谈论 Maven(用户只是获得二进制分发版,我不想强​​迫他们从源代码构建他们需要的东西)。

最佳答案

SystemClassLoader 是一个 URLClassLoader .你可以试试,我留给你:

Method method = URLClassLoader.class.getDeclaredMethod("addURL", new Class[]{URL.class});
method.setAccessible(true);
method.invoke(ClassLoader.getSystemClassLoader(), new Object[]{new URL("http://somewhere.net/library.jar")});  
Class.forName("your.remote.ClassName");

让我知道:)

关于java - 类路径中的远程 jar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14247716/

相关文章:

java - 来自 xml 的 Spring Context 类加载器

java - JAX-RS response.getEntity 在发布后返回 null

java - 使用 Spring MVC 运行脚本文件和使用 Css 文件?

java - 如何将学生日间出勤存储在数据库中并在JTable中显示?

java - 用尾随零填充 DateTimeFormatter

java - NoClassDefFoundError:com/google/api/client/auth/oauth2/Credential

classpath - ocjp 中询问 Java CLASSPATH

java - 如何让 jvm 加载我的 java.lang.String 而不是 rt.jar 中的

tomcat - ApacheFOP Tomcat/OSGI 错误 : java. lang.IllegalArgumentException:未知函数:gatherContextInfo - 使用图像创建 PDF 时

Java 字节码检测 : NullPointerException in reflective call to defineClass