Java——动态加载任意目录下的架包
来源:互联网 发布:windows隐藏任务栏图标 编辑:程序博客网 时间:2024/04/30 23:40
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();
}
}
}
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();
}
}
}
0 0
- Java——动态加载任意目录下的架包
- java加载任意目录下的.class文件
- Java的动态加载包
- Java的动态加载包
- Java---注解、类加载器-加强-实现运行任意目录下class中加了@MyTest的空参方法
- java项目读到任意目录下的文件
- javaweb读取任意目录的下的properties配置文件(解决普通java类读web-inf下任意目录)
- Android 安全——Java环境动态加载Jar之Jar包的加密和解密
- java动态加载jar包
- java动态加载jar包
- java动态加载jar包
- JAVA动态加载JAR包
- Java 动态加载jar包
- JAVA动态加载dll任意路径加载dll
- 根目录和包目录下加载文件
- URLClassLoader 读取任意目录下的class
- Linux下目录任意切换的技巧
- CentOS下任意切换目录的技巧
- leetcode: Remove Nth Node From End of List
- SRM 554 - 500 TheBrickTowerMediumDivOne
- CAS实现单点登录的时序图
- undefined与null的区别
- SSH原理与运用
- Java——动态加载任意目录下的架包
- UIApplicationLaunchOptionsRemoteNotificationKey
- Run Loop
- android 控件翻转切换布局
- PB窗口基础
- ubuntu安装Lua
- Struts2框架搭建
- HDOJ 1150 Machine Schedule 二分匹配
- iOS多线程的初步研究(八)-- dispatch队列