我有一個混合的scala/java項目 - 主要是java。我想在我的java代碼上使用Findbugs,但scala類給了它麻煩。所以我想從Findbugs中排除它們。到目前爲止,我已經嘗試在排除過濾器中列出scala類,但這沒有幫助。我正在使用maven codehaus findbugs插件版本2.3.1。從findbugs隱藏非java類
例外我得到大多采取這種形式:
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)
您是否已經分離了您的源代碼目錄?/src/main/java和src/main/scala – crowne 2010-09-20 19:42:05
Findbugs在.class文件上運行,而不是源文件。 – 2010-09-20 19:44:08
問題是findbugs在分析由scalac生成的* .class文件時創建了1000個NPE。 – 2011-01-11 10:52:56