我读取JAR文件中的文件时出现异常

时间:2016-08-15 07:36:10

标签: java maven jar

我将我的项目组装到一个带有maven的jar中,并且有一个"数据"文件夹里面包含很多.bat文件,结构是:   罐 - -      ---数据(此文件夹包含1.bat,2.bat ......)                ..... 我在How do I list the files inside a JAR file?中使用了这个方法,但是当我在cmd中运行jar时,仍然存在NullPointerException,我尝试了很多并且不知道问题出在哪里。 我的代码是:

CodeSource src=ParcelLayerTree.class.getProtectionDomain().getCodeSource();
    List<String> list=new ArrayList<String>();
    if(src!=null){
        URL jar=src.getLocation();
        ZipInputStream zip=new ZipInputStream(jar.openStream());
        ZipEntry zipEntry=null;

        while((zipEntry=zip.getNextEntry())!=null){
            String entryName=zipEntry.getName();
            if(entryName.endsWith(".dat")){
                list.add(entryName);
            }
        }
    }
    if(list.size()<=0){
        throw new IOException("not found the dat file");
    }
    for (String filePath : list) {
        String fileName=fileNameSplit(filePath);
        InputStream inputStream=ParcelLayerTree.class.getClassLoader().getResourceAsStream(fileName);
        try (BufferedReader reader = new BufferedReader(new     InputStreamReader(inputStream))) {
            int label = Integer.parseInt(fileName.split("\\.")[0]);

0 个答案:

没有答案