我们正在使用sonarQube工具,它可以检测项目中未使用的方法。我们使用java.lang.reflection api来创建/调用方法。检测到的方法实际上并没有被反射apis'或者它只检测手动调用方法?
答案 0 :(得分:3)
TLDR;没有那些仅由反射调用的方法不会被检测为使用。
更长的答案:SonarQube依赖于解析和语义分析,以便能够理解在哪里调用哪些方法。这意味着只有被调用的方法才会被检测到。还请注意,只有私有和受保护的方法可以标记为未使用,因为公共方法可以在其他项目中使用,因此无法检测为未使用。