草庐IT

SpotBugs

全部标签

java - 有没有办法用 PMD、Checkstyle、SpotBugs 等检查不兼容的 Java API 引用?

我们目前正在使用JavaCompiler11并将我们的主要工件部署到Java11。这没问题。不幸的是,我们使用的服务仅支持Java8,因此我们针对Java8编译了其中一些服务。这里没问题。我们的问题是开发人员可能会引用Java8运行时不可用的方法。例如List.of(),Optional::stream等javac版本11会编译成Java8,但是会抛出异常在JVM版本8上执行时。后者很容易通过简单的grep语句识别,但后者比较棘手,需要理解代码/AST。我检查了Checkstyle、Spotbugs和PMD的文档,但没有成功。IntelliJ在这方面其实很擅长,但它不能集成到我们的CI

java - 处理循环依赖

我想知道是否有人可以建议任何打破Java中两个类之间循环依赖的好方法。FindBugs提议使用接口(interface),所以我想知道是否有人对此类问题有任何好的经验。 最佳答案 并不总是要避免循环依赖。我会在大范围内避免使用它们,但会保留在系统的小角落。总的来说,如果数据访问层和J2EE应用程序的表示层循环依赖,我会说这是一件坏事,因为这意味着一切都必须一次性编译,测试是噩梦。但是,如果列表数据结构及其迭代器类型是循环依赖的,那没问题。正如Findbugs建议的那样,使用接口(interface)来打破循环依赖。即为至少一种类型的

android - 将 SpotBugs 添加到我的项目中

我一直在努力添加SpotBugs到我目前正在处理的android项目。我设法让它工作,但我对它的设置方式并不过分兴奋。目前,配置位于我的app/build.gradle文件中,这使得该文件不易管理。我想知道是否有SpotBugs/Gradle专家知道将配置拉出到单独文件中的方法。这是我的app/build.gradle(删除了样板):buildscript{repositories{...}dependencies{classpath'com.stanfy.spoon:spoon-gradle-plugin:1.2.2'classpath'io.fabric.tools:gradle:

android - Android Studio 的最小工作 SpotBugs 设置

如何为Android设置SpotBugs?我尝试关注officialdocumentation和gradleplugin的那个,但针对Android的设置不完整且令人困惑,并且无法正常工作。我尝试了以下设置。build.gradle(项目):buildscript{repositories{//...maven{url"https://plugins.gradle.org/m2/"}}dependencies{//...classpath"gradle.plugin.com.github.spotbugs:spotbugs-gradle-plugin:1.6.4"}}build.gra

代码Bug太多?给新人Code Review头都大了?快来试试SpotBugs

如果你需要一个自动化的工具帮助你或者你的团队发现代码中的缺陷,在提升代码质量同时减少人工CodeReview的成本,那这篇文章非常的适合你。本文围绕SpotBugs与Gradle集成,将相关配置和使用进行了详细介绍,并提供了各种能够为你的项目定制化配置的手段。来源和出处都已在文中关键处以超链接给出,尽情享受吧。SpotBugs是什么?SpotBugs是一个开源的Java静态分析工具,旨在帮助开发人员检测代码中的潜在缺陷和漏洞。SpotBugs可以通过扫描Java字节码来发现潜在的问题,例如空指针引用、类型转换错误、未使用的变量等等。它还可以检测代码中的潜在安全漏洞,例如SQL注入、XSS攻击等

代码Bug太多?给新人Code Review头都大了?快来试试SpotBugs

如果你需要一个自动化的工具帮助你或者你的团队发现代码中的缺陷,在提升代码质量同时减少人工CodeReview的成本,那这篇文章非常的适合你。本文围绕SpotBugs与Gradle集成,将相关配置和使用进行了详细介绍,并提供了各种能够为你的项目定制化配置的手段。来源和出处都已在文中关键处以超链接给出,尽情享受吧。SpotBugs是什么?SpotBugs是一个开源的Java静态分析工具,旨在帮助开发人员检测代码中的潜在缺陷和漏洞。SpotBugs可以通过扫描Java字节码来发现潜在的问题,例如空指针引用、类型转换错误、未使用的变量等等。它还可以检测代码中的潜在安全漏洞,例如SQL注入、XSS攻击等