2011-03-26 17 views
6

我想我理解類加載層次結構是如何工作的。 (JVM首先查找父層次結構)如何創建一個不會搜索父類以加載類的ClassLoader

所以我想創建一個ClassLoader或使用現有的庫,它是一個完全獨立的作用域,並且不會查看父ClassLoading層次結構。其實我正在尋找啓動一個單獨的JVM的相同效果,但沒有這樣做。

我相信這是可能的,但很驚訝,很難找到一個簡單的例子來說明如何做到這一點。

回答

9

只需使用URLClassLoader並提供null作爲父項。

File myDir = new File("/some/directory/"); 
ClassLoader loader = null; 
try { 
    URL url = myDir.toURL();   
    URL[] urls = new URL[]{url}; 
    loader = new URLClassLoader(urls, null); 
} 
catch (MalformedURLException e) 
{ 
    // oops 
} 
相關問題