I have several compiled Java class files from different packages in one directory, such as
C: / Classes / Packages / A Class
C: / Classes / Packages / B Class
C: / Classes / Packet / Espackage / C class
C: / classes / package / espackage / d class
I'm trying to load them using this URL classloader.
URL Classloader Classloader = New URL Class Loader (New URL [] {New File ("C: / Classes /"). TOURU () .TurURL ()}); System.out.println ("Loading class ..."); Classloader.loadClass ("package.A"); Classloader.loadClass ("package.B"); Classloader.loadClass ("package.subpackage.C"); Classloader.loadClass ("package.subpackage.D"); System.out.println ("Loaded Class.");
This code runs fine until I try to load "package.subpackage.D". The program is permanently hanged.
Changing the order to load the classes did not have any effect, but after a lot of experimentation, I found that any class would hang like this to expand a local class , Already all classes in the "native" runtime
So here are my questions:
Is this the right way to load classes during runtime?
What is a fix for the problem?
Thank you for your time.
Your
URLClassLoader needs a parent who can access JDK classes Know how to load the original loader should be borrowed from the context, namely:
new URLClassLoader (url, this.getClass (). GetClassLoader ())
view.
No comments:
Post a Comment