JAVA 动态(手动)加载jar文件
2013-10-23 16:12
411 查看
//filePath 是jar的绝对路径
URL url = new URL("file:"+filePath);
//里面是一个url的数组,可以同时加载多个
URLClassLoader loader = new URLClassLoader( new URL[]{ url } );
//根据类名加载指定类,例:
Class class = loader.loadClass("org.util.fileUtil");
//获取一个类的实例
Object fileUtil = class.newInstance();
//通过反射调用类中的方法,例如调用addFile方法,有1个String参数和一个int参数:
class.getMethod("addFile",new Class[]{String.class,int.class}).invoke(fileUtil,new Object[]{"fileUid",12});
如果有返回值,则直接返回需要的值,例:
int status = (Integer)class.getMethod("addFile",new Class[]{String.class,int.class}).invoke(fileUtil,new Object[]{"fileUid",12});
URL url = new URL("file:"+filePath);
//里面是一个url的数组,可以同时加载多个
URLClassLoader loader = new URLClassLoader( new URL[]{ url } );
//根据类名加载指定类,例:
Class class = loader.loadClass("org.util.fileUtil");
//获取一个类的实例
Object fileUtil = class.newInstance();
//通过反射调用类中的方法,例如调用addFile方法,有1个String参数和一个int参数:
class.getMethod("addFile",new Class[]{String.class,int.class}).invoke(fileUtil,new Object[]{"fileUid",12});
如果有返回值,则直接返回需要的值,例:
int status = (Integer)class.getMethod("addFile",new Class[]{String.class,int.class}).invoke(fileUtil,new Object[]{"fileUid",12});
相关文章推荐
- java数组遍历 删除remove
- java加解密
- MyEclipse使用技巧详解
- java笔记
- myeclipse报异常:java.lang.OutOfMemoryError: Java heap space
- javabean总结
- springrain 1.1 发布,spring 的极简封装
- java-Socket文件上传/进度条
- struts2用到的jar有那些
- Java安全管理器(Security Manager)
- Eclipse(properties)插件:PropertyEditor在线安装
- java自动转成uml图
- java MD5 加密 16位和32位,注意字符串最好用UTF-8编码
- JAVA网页浏览器
- java变量
- 在struts中的Action方法中,调用request.getInputStream() 发现无法读到任何数据
- 关于eclipse没有代码提示解决方法
- javaweb之Filter详解
- java web filter listenter 示例
- Spring+mybatis 多数据源整合[备用]