首页  >  问答  >  正文

java 如何列出jar包中jar包里的所有文件和目录?

如这样一个目录/Users/xxx/IdeaProjects/abc/web/target/web.jar!/BOOT-INF/lib/rest-0.0.1.jar!/com/tg/tiny
/Users/xxx/IdeaProjects/abc/web/target/web.jar这个jar包下的文件目录可以这样得到

JarFile localJarFile = new JarFile(new File("/Users/xxx/IdeaProjects/abc/web/target/web.jar"));
Enumeration<JarEntry> entries = localJarFile.entries();
        while (entries.hasMoreElements()) {
            JarEntry jarEntry = entries.nextElement();
            System.out.println(jarEntry.getName());
        }

那么这个web.jar里的rest-0.0.1.jar下的文件目录如何得到?

天蓬老师天蓬老师2743 天前971

全部回复(2)我来回复

  • 巴扎黑

    巴扎黑2017-04-18 10:54:55

    雷雷

    回复
    0
  • ringa_lee

    ringa_lee2017-04-18 10:54:55

    jar包是个文件。不是目录。
    需要通过classloader的getResourceAsStream()。

    package edu.hxraid;  
    import java.io.*;  
    public class Resource {  
        public void getResource() throws IOException{  
            //返回读取指定资源的输入流  
            InputStream is=this.getClass().getResourceAsStream("/resource/res.txt");   
            BufferedReader br=new BufferedReader(new InputStreamReader(is));  
            String s="";  
            while((s=br.readLine())!=null)  
                System.out.println(s);  
        }  
    } 

    详细使用:
    http://www.myexception.cn/pro...

    回复
    0
  • 取消回复