Skip to main content

针对代码质量的 Java CodeQL 查询

探索 CodeQL 用于分析 Java 编写的代码质量的查询。

Code Quality 使用以下 CodeQL 查询来分析 Java 代码并检测代码质量问题:

  • 你的默认分支,结果显示在存储库的“常规发现”仪表板上
  • 拉取请求,结果显示为由 github-code-quality[bot] 发表的评论

尽可能为结果提供 Copilot自动修复 建议。

查询名称类别Severity
访问不支持的 JDK 内部 API可维护性建议
装箱变量从不为 null可维护性警告
从抽象转换为具体集合可维护性警告
类与超级类同名可维护性建议
方法名称因为大写而混淆可维护性建议
方法重载导致混淆可维护性建议
常量接口反模式可维护性建议
永远不会访问容器内容可维护性错误
低效空字符串测试可维护性建议
低效的字符串构造函数可维护性建议
内部类可以是静态的可维护性建议
无法实现接口可维护性警告
Javadoc 具有不可能的“抛出”标记可维护性建议
误导性缩进可维护性警告
缺少重写注释可维护性建议
字符串文本中缺少空格可维护性建议
对类的所有公共方法进行模拟可能表明单元测试的范围过大可维护性建议
switch 语句中的非大小写标签可维护性建议
非显式控件和空格字符可维护性警告
可能混淆本地变量和字段变量可维护性建议
错误的 Javadoc @param 标记可维护性建议
对继承方法的微妙调用可维护性警告
用作标识符的下划线可维护性建议
未读本地变量可维护性建议
未使用的类和接口可维护性建议
未使用的格式参数可维护性警告
未使用的标签可维护性建议
在生产代码中使用 VisibleForTesting可维护性警告
无用的“null”检查可维护性警告
无用参数可维护性建议
无用的 toString 调用在字符串上可维护性建议
无用类型测试可维护性警告
数组索引超出范围Reliability错误
传递给 StringBuffer 或 StringBuilder 构造函数的字符Reliability错误
相同值的比较Reliability错误
常量循环条件Reliability警告
容器内容永远不会初始化Reliability错误
容器大小与零相比Reliability警告
无法继续的 continue 语句Reliability警告
相互矛盾的类型检查Reliability错误
解引用表达式可能为 nullReliability警告
解引用的变量始终为 nullReliability错误
取消引用的变量可能为 nullReliability警告
直接调用 run() 方法Reliability建议
请勿调用 finalize()Reliability错误
双重检查锁定不是线程安全的Reliability错误
Equals 方法不检查参数类型Reliability错误
与不可比类型相等Reliability错误
Equals 或 hashCode 在数组上的使用Reliability错误
转义Reliability警告
公开内部表示形式Reliability建议
表达式始终计算结果为相同的值Reliability警告
没有 hashCode 定义的哈希值Reliability错误
调用时被忽略的错误状态Reliability建议
在记录类中被忽略的序列化成员Reliability警告
从数组到字符串的隐式转换Reliability建议
不一致的等于和 hashCodeReliability错误
getter 和 setter 的同步不一致Reliability错误
低效的输出流Reliability警告
低效基元构造函数Reliability建议
密钥集迭代器使用效率低下Reliability建议
包装迭代器的可迭代对象Reliability警告
实现可迭代的迭代器Reliability警告
左移超过类型宽度Reliability警告
JUnit 5 内部测试类上缺少 @Nested 注释Reliability警告
缺少对 NumberFormatException 的捕获Reliability建议
缺少格式参数Reliability错误
构造函数中的非最终方法调用Reliability错误
同步方法的非同步重写Reliability警告
不是线程安全的Reliability警告
潜在的数据库资源泄漏Reliability警告
潜在的输入资源泄漏Reliability警告
潜在的输出资源泄漏Reliability警告
双重检查锁定对象初始化中的竞态条件Reliability警告
装箱类型的引用相等性测试Reliability错误
乘法结果转换为更宽类型Reliability警告
安全发布Reliability警告
自我赋值Reliability错误
可疑日期格式Reliability警告
在装箱类型或字符串上实现同步Reliability错误
容器访问时的类型不匹配Reliability错误
容器修改时的类型不匹配Reliability错误
无法访问 catch 子句Reliability警告
使用第一个参数不是正则表达式的String#replaceAllReliability建议
使用默认 toString()Reliability建议
无用比较测试Reliability警告
空格与运算符优先级相矛盾Reliability警告
错误的 NaN 比较Reliability错误
零线程已设置为 java.util.concurrent.ScheduledThreadPoolExecutorReliability建议