您的位置:首页 > 编程语言 > Java开发

Java——动态加载任意目录下的架包

2014-07-02 17:44 232 查看
package com;

import java.io.File;

import java.lang.reflect.InvocationTargetException;

import java.lang.reflect.Method;

import java.net.MalformedURLException;

import java.net.URL;

import java.net.URLClassLoader;

/**

 * @author Administrator

 * @function:动态加载任意目录下的架包

 *

 */

public class DynamicLoadJar {
/**
* @author 2014-7-2 下午05:44:53
* @param jarSet 架包目录存放路径
*/
public static void loadJar(File[] jarSet) {
URLClassLoader cl = (URLClassLoader) Thread.currentThread()
.getContextClassLoader();

Class sysclass = URLClassLoader.class;
Method method = null;
try {
method = sysclass.getDeclaredMethod("addURL",
new Class[] { URL.class });
method.setAccessible(true);
for (File jar : jarSet) {
method.invoke(cl, jar.toURI().toURL());
}
} catch (NoSuchMethodException e) {
e.printStackTrace(); 
} catch (InvocationTargetException e) {
e.printStackTrace(); 
} catch (MalformedURLException e) {
e.printStackTrace(); 
} catch (IllegalAccessException e) {
e.printStackTrace(); 
}
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java tomcat 架包