Android Lint是否在某个地方缓存旧结果,如果是,我该如何清除它?

时间:2012-04-13 18:30:32

标签: android android-lint

我一直在清理我的Android项目中的Lint警告,但是在我修复它们之后,它们中的一些似乎仍然存在。

例如,我收到了这个警告:

Use android.util.FloatMath#sqrt() instead of java.lang.Math#sqrt to avoid argument float to double conversion

嘿,很高兴知道。我学到了一些东西所以我更正了错误(我尝试将数学转换为使用double并将Math更改为FloatMath)并重新运行我的Lint报告。警告仍然出现!更重要的是,HTML报告中显示的小代码片段与以前的行相同,但由于我移动了一些代码,所显示的内容不再相关。因此看起来Lint正在以某种方式缓存先前运行的结果,但我还没弄清楚如何清除它。

我正在使用命令行Lint并根据结果生成HTML报告(如果相关)。我正在使用以下命令,该命令在lint_report目录中输出多文件HTML报告,并在project_directory中扫描Android项目。

$ lint --html lint_report/ project_directory/

我能否以某种方式清除Android Lint的旧结果,或者这是一个错误?

2 个答案:

答案 0 :(得分:2)

事实证明,Android Lint使用已编译的类文件来进行报告。答案只是在运行Lint报告之前重建应用程序。

答案 1 :(得分:1)

在Eclipse中:

第一

右键点击项目> Android工具>清除棉绒标记

然后

右键点击项目> Android工具>运行Lint:检查常见错误

命令行:(按照上面的示例)

第一

rm -rf ./project_directory/lint_report

然后

再次运行Lint