我扩展了classloaderMyClassLoader loader=new MyClassLoader("类路径");使用 Class clas = loader.loadClass("com.test.AA");com.test.AA a=(com.test.AA)clas.newInstance();以上都没问题,可以正常使用.我想隐式加载我的AA,但又不想把我的class放在 classpath中.
如
Thread.currentThread().setContextClassLoader(loader)
com.test.AA a=new com.test.AA();怎么也不行,好象tomcat能实现,那位知道怎么解决?
如
Thread.currentThread().setContextClassLoader(loader)
com.test.AA a=new com.test.AA();怎么也不行,好象tomcat能实现,那位知道怎么解决?
你以為虛擬機是超人啊
不同的ClassLoader会在不同的目录寻找类,所以你的类必须放在一些路径里面,比如CLASSPATH。如果你的意思是不配置任何环境加载类,那就需要用URLClassLoader
他可以在运行的时候根据路径参数到目录里面寻找加载的类。
我想这个是你需要的吧。