2010-09-20 9 views
6

मेरे पास मिश्रित स्कैला/जावा परियोजना है - ज्यादातर जावा। मैं अपने जावा कोड पर Findbugs का उपयोग करना चाहता हूं, लेकिन स्कैला कक्षाएं इसे परेशानी दे रही हैं। तो मैं उन्हें Findbugs से बाहर करना चाहता हूं। अब तक मैंने फ़िल्टर को छोड़कर स्कैला कक्षाओं को सूचीबद्ध करने का प्रयास किया है, लेकिन यह मदद नहीं कर रहा है। मैं मेवेन कोडहॉस findbugs प्लगइन संस्करण 2.3.1 का उपयोग कर रहा हूँ।findbugs से गैर-जावा कक्षाओं को छिपाना

अपवाद मैं ज्यादातर इस रूप ले हो रही है:

 
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) 
+0

आप अपने स्रोत निर्देशिका अलग है?/Src/मुख्य/जावा और src/मुख्य/स्केला – crowne

+3

FindBugs .class फ़ाइलें, नहीं स्रोत फ़ाइलों पर चल रही है। –

+0

समस्या यह है कि स्केलैक द्वारा उत्पन्न * .class फ़ाइलों का विश्लेषण करते समय findbugs एनपीई के 1000s बनाता है। –

उत्तर

3

नहीं वास्तव में एक समाधान है, लेकिन स्काला वर्ग फ़ाइलों उत्पन्न के लिए और साथ FindBugs काम करना चाहिए, तो मैं करने के लिए इन त्रुटियों को रिपोर्ट करने के लिए सुझाव देंगे FindBugs टीम। निश्चित रूप से FindBugs का विश्लेषण ज्यादातर मामलों में स्केल कक्षाओं के लिए बहुत उपयोगी नहीं हो सकता है (भारी कंपाइलर जादू की वजह से), लेकिन कम से कम FindBugs को क्रैश नहीं करना चाहिए। मुझे आशा है कि अभी या बाद में FindBugs बढ़ाया जाएगा स्काला कक्षाएं एक विशेष उपचार देने के लिए (लेकिन ऐसा नहीं होगा कोई भी शिकायत करता है, तो :-)

+1

दरअसल, बग FindBugs ट्रंक में तय किया गया है: http://code.google.com/p/findbugs/source/detail?r=12121 मुझे यकीन है कि नहीं कर रहा हूँ वहाँ FindBugs Maven प्लगइन का उपयोग एक बनाने के लिए कोई तरीका है यद्यपि findbugs के ट्रंक निर्माण। –

+0

@ गीफ रेडी धन्यवाद! मुझे अपने आप को 1.3.9 कोड पर फिक्स लागू करना पड़ा, लेकिन ऐसा लगता है कि यह खोजों को खुश कर देता है। उम्मीद है कि findbugs 2.0 जल्द ही बाहर हो जाएगा। – sblundy

संबंधित मुद्दे