是否可以使用Find in Path
搜索反编译的.class文件中的特定字符串( Ctrl + Shift + F )在Intellij?
我想搜索一下我没有源代码的库代码。
尽管字符串在编辑器中存在(并且可见),但查找不会弹出任何结果。
答案 0 :(得分:14)
如果事先手动反编译所有类并将反编译的源附加到要搜索的库中,则无法实现。
IntelliJ IDEA在路径中查找仅适用于源文件和资源文件。它不会搜索二进制.class文件。导航到.class文件时看到的是该类的反编译版本。反编译是动态执行的,IDE不会自动反编译和索引所有.class文件,因此没有可用的索引,也无法执行快速搜索。这种功能虽然在技术上可行,但需要对所有依赖项进行反编译和索引,这可能需要花费大量时间和系统资源,尤其是在具有大量依赖项的项目中。
通常,您可以使用所依赖的库。对于Gradle / Maven项目,IntelliJ IDEA可以自动下载和配置这些源,因此在路径中查找将在库内部使用大多数用户/项目的附加源。
如果库没有源,您可以使用命令行批量反编译器对整个库执行脱机反编译,并将包含反编译源的目录附加到库中。
引自IntelliJ IDEA论坛中的this answer。
答案 1 :(得分:-5)
在路径中查找(Ctrl + Shift + F) in Intellij
和Scope > All Places
应该搜索所有地方的用法(甚至在您的图书馆中)
注意:虽然这不会在反编译类中搜索。这有助于您搜索所有文件。