Masquer les classes non java de findbugs


J'ai un projet scala/java mixte - principalement java. Je voudrais utiliser Findbugs sur mon code java, mais les classes scala lui posent des problèmes. Je voudrais donc les exclure de Findbugs. Jusqu'à présent, j'ai essayé d'énumérer les classes scala dans un filtre d'exclusion, mais cela n'aide pas. J'utilise le plugin maven codehaus findbugs version 2.3.1.

Les exceptions que je reçois prennent principalement cette forme:

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 org.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)
Author: Pascal Thivent, 2010-09-20

1 answers

Pas vraiment une solution, mais FindBugs devrait également fonctionner pour les fichiers de classe générés par Scala, donc je suggère de signaler ces erreurs à l'équipe FindBugs. Bien sûr, l'analyse de FindBugs peut ne pas être très utile pour les classes Scala dans la plupart des cas (en raison de la magie lourde du compilateur), mais au moins FindBugs ne devrait pas planter. J'espère que tôt ou tard FindBugs sera étendu pour donner aux classes Scala un traitement spécial (mais cela n'arrivera pas si personne ne se plaint: -)

 3
Author: Landei, 2010-09-21 06:56:55