如何通过Java编码在运行时将My Jar加载到ClassPath?

时间:2015-02-12 05:37:30

标签: java swing netbeans jbutton

我正在使用Swing in Net Beans。我有自己的jar,里面包含类和方法。我将使用JAVA Reflection API调用这些类和方法,但在此之前我想在运行时将我的Jar加载到类路径中。我有一个J按钮,点击它我得到Jar Name和Jar路径。但我没有在运行时将Jar加载到classpath。有一些链接,但没有帮助。请给我一个简单的例子。我应该将我的jar加载到classpath。这对我来说是唯一的问题。我会照顾到这一点。请帮忙。

1 个答案:

答案 0 :(得分:3)

您可以在运行时使用ClassLoader加载课程,例如URLClassLoader看一下

File yourJarFile = ...;
URLClassLoader classLoader = new URLClassLoader(new URL[]{yourJarFile.toURI().toURL()});

这将允许您加载类并实例化它们......

Class class = classLoader.loadClass("fully.qualified.packagename.to.your.AwesomeClass");

然后,您可以使用类似......

之类的东西对它们进行实例化
Object obj = class.newInstance();

如果您想使用特定的构造函数,请进行反射。请记住,您无法直接在当前的类加载器上下文中引用这些类,因为当前的类加载器对它们一无所知