未在类中引用的库出错

时间:2015-04-16 12:55:22

标签: java

短代码剪辑以获取文件夹/文件列表:

        GetFilesFolders gf = new GetFilesFolders();
        @SuppressWarnings("unchecked")
        List<String> adOn = gf.getFileListing(pth1, true);
        @SuppressWarnings("unchecked")
        List<String> orIg = gf.getFileListing(pth2, true);

        List<String> Conflict_Addons = new ArrayList<>();
        List<String> Conflict_Orig = new ArrayList<>();

        for(String i : adOn){
            for(String r : orIg){
                java.io.File ad = new java.io.File(i);
                java.io.File or = new java.io.File(r);
                if(ad.getName().equals(or.getName())){
                    Conflict_Addons.add(i);
                    Conflict_Orig.add(r);
                }
            }
        }

运行时遇到的错误是:

Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException: javaxt.io.File cannot be cast to java.lang.String

    at modmaker.Merger$$Lambda$49/826640700.accept(Unknown Source)
    at java.util.LinkedList$LLSpliterator.forEachRemaining(LinkedList.java:1235)
    at java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:580)
    at modmaker.Merger.checkConflicts(Merger.java:206)

206是:for(String i:adOn){

我在项目中使用javaxt但不在此类或GetFilesFolders类中使用?

1 个答案:

答案 0 :(得分:1)

我猜你在gf.getFileListing(pth1, true)遇到了某种问题。您可以使用调试器检查返回的List是否包含String个实例。看起来有人骗你并给你一个文件列表,并说是一个字符串列表。