Java JVM可以';找不到自定义类加载器

Java JVM可以';找不到自定义类加载器,java,classloader,classnotfoundexception,Java,Classloader,Classnotfoundexception,我已经创建了一个自定义Java类加载器,但我无法让JVM加载它。启动应用程序时,我收到一个ClassNotFoundException。包含我的代码的JAR作为JVM的参数添加到类路径中。现在我想知道我是否把JAR放在了正确的位置……这里添加了类加载器吗?我知道应用程序代码会被添加到类路径中,但是有人可能会争论自定义类加载器是应用程序代码还是JVM内部的。有什么想法吗 编辑: 好的,在进一步考虑这个问题之后,我想我可能会要求JVM做一些循环的事情。我创建的类加载器是一个系统类加载器。这些类加载器

我已经创建了一个自定义Java类加载器,但我无法让JVM加载它。启动应用程序时,我收到一个ClassNotFoundException。包含我的代码的JAR作为JVM的参数添加到类路径中。现在我想知道我是否把JAR放在了正确的位置……这里添加了类加载器吗?我知道应用程序代码会被添加到类路径中,但是有人可能会争论自定义类加载器是应用程序代码还是JVM内部的。有什么想法吗

编辑:

好的,在进一步考虑这个问题之后,我想我可能会要求JVM做一些循环的事情。我创建的类加载器是一个系统类加载器。这些类加载器是在类路径中搜索要加载的类的,但是我已经把类加载器本身放在那里了!那么,如果我是对的,那么定制类装入器会去哪里?

以及其他类。那些需要加载的文件不能已经在你的类路径上了。你能澄清一下你回答的第二部分是什么意思吗?我不明白。需要说明的是:我创建了一个自定义类加载器,并使用选项
-Djava.system.class.loader=com.blah.MyClassLoader
将其指定给JVM。然后,我将包含MyClassLoader的JAR添加到类路径中,但JVM抱怨它找不到MyClassLoader。@Boon这在高级上是正确的过程。您可以尝试
javap-classpath x.jar com.blah.MyClassLoader
来验证MyClassLoader是否正确打包。如果这样做有效,那么我不知道为什么
java-Djava.system.class.loader=com.blah.MyClassLoader
不起作用。