我们正在尝试将我们非常大的代码库从 Guava 11 迁移到 Guava 14,并希望捕获已删除或已弃用的 API 的使用情况。FindBugs 可以执行这样的检查吗?如果是这样,怎么做?
问问题
485 次
3 回答
4
一种解决方案是仅使用 Oracle 的 Java 编译器javac
来执行此操作。
如果使用 API 中删除的方法会导致编译器错误,因此应该可以通过编译代码找到它们。
可以使用 javac-deprecation
选项找到不推荐使用的方法。更多信息:http -deprecation
:
//docs.oracle.com/javase/6/docs/technotes/tools/windows/javac.html
于 2013-03-13T21:55:07.770 回答
1
我认为javac
不会涉及的一个方面是您是否无法更改 3rd 方代码以添加@Deprecated
注释。如果你只是想避免一个没有被标记为弃用的方法,你可以使用我为 FindBugs 写的这个插件:
https://github.com/Grundlefleck/FindBugs4Deprecating3rdParty
文档很少,因此您可能需要自己探索一下。它允许配置方法和类以避免在属性文件中。我用它来弃用org.junit.Assert.assertThat
.
于 2014-01-29T13:54:54.000 回答
1
您也可以使用 PMD Sourceforge来完成此任务。有一些规则可以让您找到不推荐使用的方法
于 2013-03-13T22:03:08.723 回答