加载jar
来源:互联网 发布:mac下方图标隐藏 编辑:程序博客网 时间:2024/06/10 00:07
asynchbase-1.6.0.jar
在c/s结构的应用中,很多时候我们都需要在启动时指定很多jar文件的路径,jar包少点还好,多了就很麻烦,还要维护他。
为方便起见,程序启动时,由main函数动态去加载指定路径下的jar文件到jvm,这样启动命令就干净了很多。
加载jar包的代码:
[java] view plaincopyprint?
- private static class JarLoader {
- private URLClassLoader urlClassLoader;
- public JarLoader(URLClassLoader urlClassLoader) {
- this.urlClassLoader = urlClassLoader;
- }
- public void loadJar(URL url) throws Exception {
- Method addURL = URLClassLoader.class.getDeclaredMethod("addURL", URL.class);
- addURL.setAccessible(true);
- addURL.invoke(urlClassLoader, url);
- }
- }
- private static void loadjar(JarLoader jarLoader, String path) throws MalformedURLException, Exception{
- File libdir = new File(path);
- if (libdir != null && libdir.isDirectory()) {
- File[] listFiles = libdir.listFiles(new FileFilter() {
- @Override
- public boolean accept(File file) {
- // TODO Auto-generated method stub
- return file.exists() && file.isFile() && file.getName().endsWith(".jar");
- }
- });
- for (File file : listFiles) {
- jarLoader.loadJar(file.toURI().toURL());
- }
- }else{
- System.out.println("[Console Message] Directory ["+path+"] does not exsit, please check it");
- System.exit(0);
- }
- }
- public static void main(String[] args) {
- JarLoader jarLoader = new JarLoader((URLClassLoader)ClassLoader.getSystemClassLoader());
- loadjar(jarLoader, System.getProperty("user.dir")+"/lib");
- }
这样,我们在启动的时候就java -jar app.jar 就好了,其他Jar包由main函数搞定。
0 0
- 加载jar
- jar加载过程,动态加载
- Java动态加载jar
- Java ClassLoader加载.jar
- 自定义加载jar包
- URLClassLoader加载jar包
- jar包源文件加载
- android 动态加载jar
- Tomcat重新加载jar
- Java ClassLoader加载.jar
- Java 加载Jar包
- android动态加载jar
- Tomcat jar加载相关
- Java动态加载Jar
- 动态加载jar文件
- Android动态加载jar
- tomcat jar 加载
- 文件加载jar冲突
- 解决ECShop首页缩略图和产品页图片模糊方法
- JFreeChart的使用
- Servlet入门总结及第一个Servlet程序
- Fragment里使用CordovaWebView
- Linux C++学习之路
- 加载jar
- 光子支付
- 单例创建及宏实现单例
- 用dbcp连接池链接RAC集群,怎么配置啊?
- C++第三章
- 自用矩阵操作
- ZOJ 2412 Farm Irrigation 建图BFS
- 第一单元
- AP下线数据自动查询程序(三)