يمكّنك هذا المكون الإضافي SBT من تحليل رمز (Java) بمساعدة أداة FindBugs الرائعة. يحدد إجراء findbugs SBT لهذا الغرض.
قم بتثبيت البرنامج المساعد بإضافة ما يلي إلى project/plugins.sbt :
addSbtPlugin( " com.github.sbt " % " sbt-findbugs " % " <version> " ) ثم قم بتشغيل البرنامج المساعد مع sbt findbugs . سيؤدي ذلك إلى إنشاء تقرير FindBugs في target/scala-xx/findugs/report.xml .
فقط استخدم Scala Inline XML للإعداد ، على سبيل المثال:
findbugsIncludeFilters := Some (< FindBugsFilter >
< Match >
< Class name = " de.johoop.Meep " />
</ Match >
</ FindBugsFilter >)يمكنك أيضًا قراءة إعدادات التصفية من الملفات بطريقة أكثر تقليدية:
findbugsIncludeFilters := Some (baseDirectory.value / " findbugs-include-filters.xml " )أو ، عندما يتم ضبط التكوين الخاص بك ونشره مسبقًا على ريبو محلي:
findbugsIncludeFilters := {
val configFiles = update.value.select(module = moduleFilter(name = " velvetant-sonar " ))
val configFile = configFiles.headOption flatMap { zippedFile =>
IO .unzip(zippedFile, target.value / " rules " ) find (_.name contains " velvetant-sonar-findbugs.xml " )
}
configFile map scala.xml. XML .loadFile orElse sys.error( " unable to find config file in update report " )
}(انظر أيضًا وثائق FindBugs)
findbugsReportTypeSome(FindbugsReportType.{Xml, Html, PlainHtml, FancyHtml, FancyHistHtml, Emacs, Xdoc})Some(FindbugsReportType.Xml)findbugsReportPathSome(crossTarget.value / "findbugs" / "report.xml")findbugsPriorityFindbugsPriority.{Relaxed, Low, Medium, High}FindbugsPriority.MediumfindbugsEffortFindbugsEffort.{Minimum, Default, Maximum}FindbugsEffort.DefaultfindbugsOnlyAnalyzeList[String] من الحزم والفئات.None (المعنى: تحليل كل شيء).findbugsMaxMemory1024findbugsAnalyzeNestedArchivestrue falsetruefindbugsSortReportByClassNamestrue falsefalsefindbugsIncludeFiltersNone Option[Node]None (لا تشمل المرشحات).findbugsExcludeFiltersNone وبعض Some[Node]None (لا يستبعد المرشحات).findbugsAnalyzedPathsbt.PathSeq(classDirectory in Compile value) بفضل asflierl و anishathalee على مساهماتهم!
حقوق الطبع والنشر (ج) يواكيم هوفر والمساهمين
جميع الحقوق محفوظة.
يتم توفير هذا البرنامج والمواد المصاحبة بموجب شروط ترخيص Eclipse العام v1.0 الذي يرافق هذا التوزيع ، وهو متاح على http://www.eclipse.org/legal/epl-v10.html