我正在 Net Beans 中使用 Swing。我有自己的 jar,其中包含类和方法。我将使用 JAVA Reflection API 调用这些类和方法,但在此之前我想在运行时将 Jar 加载到类路径中。我有一个 J 按钮,单击该按钮我将获得 Jar 名称和 Jar 路径。但我无法在运行时将 Jar 加载到类路径。得到了一些链接,但没有帮助。请给我提供一个简单的例子。我应该将 jar 加载到类路径。这是我唯一的问题。我会解决的。请帮忙。
您可以通过使用在运行时加载类ClassLoader
, 看一眼URLClassLoader http://docs.oracle.com/javase/7/docs/api/java/net/URLClassLoader.html例如
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();
或者如果您想使用特定的构造函数,则可以使用反射。请记住,您将无法在当前类加载器上下文中直接引用这些类,因为当前类加载器对它们一无所知
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)