开发者

Hiding non-java classes from findbugs

I have a mixed scala/java project - mostly java. I would like to use Findbugs on my java code, but the scala classes are giving it trouble. So I'd like to exclude them from Findbugs. So far I've tried listing the scala classes in an exclude filter, but that's not helping. I'm using the maven codehaus findbugs plugin version 2.3.1.

The exceptions I'm getting mostly take this form:

Exception analyzing some.scala.Class using detector edu.umd.cs.findbugs.detect.FindUnrelatedTypesInGenericContainer
  java.lang.NullPointerException
    At edu.umd.cs.findbugs.classfile.engine.ClassParserUsingASM$1$2.visitEnd(ClassParserUsingASM.java:319)
    At or开发者_开发技巧g.objectweb.asm.ClassReader.accept(Unknown Source)
    At edu.umd.cs.findbugs.asm.FBClassReader.accept(FBClassReader.java:44)
    At org.objectweb.asm.ClassReader.accept(Unknown Source)
    At edu.umd.cs.findbugs.classfile.engine.ClassParserUsingASM.parse(ClassParserUsingASM.java:93)
    At edu.umd.cs.findbugs.classfile.engine.ClassParserUsingASM.parse(ClassParserUsingASM.java:414)
    At edu.umd.cs.findbugs.classfile.engine.ClassInfoAnalysisEngine.analyze(ClassInfoAnalysisEngine.java:65)
    At edu.umd.cs.findbugs.classfile.engine.ClassInfoAnalysisEngine.analyze(ClassInfoAnalysisEngine.java:39)
    At edu.umd.cs.findbugs.classfile.impl.AnalysisCache.getClassAnalysis(AnalysisCache.java:214)
    At edu.umd.cs.findbugs.ba.XFactory.getXClass(XFactory.java:581)
    At edu.umd.cs.findbugs.ba.AnalysisCacheToAnalysisContextAdapter.setAppClassList(AnalysisCacheToAnalysisContextAdapter.java:319)
    At edu.umd.cs.findbugs.FindBugs2.createAnalysisContext(FindBugs2.java:785)
    At edu.umd.cs.findbugs.FindBugs2.execute(FindBugs2.java:187)
    At edu.umd.cs.findbugs.FindBugs.runMain(FindBugs.java:348)
    At edu.umd.cs.findbugs.FindBugs2.main(FindBugs2.java:1057)


Not really a solution, but FindBugs should work for Scala generated class files as well, so I'd suggest to report these errors to the FindBugs team. Of course the analysis of FindBugs might be not very helpful for Scala classes in most cases (because of the heavy compiler magic), but at least FindBugs shouldn't crash. I hope that sooner or later FindBugs will be extended to give Scala classes a special treatment (but that won't happen if nobody complains :-)

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜