Eclipse中搜索JDK源码内指定文本有哪些可行便捷的方法?
你遇到的Eclipse搜索限制问题可以通过以下几种方法解决:
- 直接使用命令行搜索JRE核心库
对于JDK8及更早版本,直接对JRE目录下的rt.jar执行字符串搜索即可:# Linux/macOS 环境 grep -a "Button.defaultButtonFollowsFocus" $JAVA_HOME/jre/lib/rt.jar
JDK9及以上版本可以对# Windows 环境 findstr /c:"Button.defaultButtonFollowsFocus" %JAVA_HOME%\jre\lib\rt.jarjmods目录下的java.desktop.jmod文件执行搜索。 - 调整Eclipse文件搜索范围
打开文件搜索页后,点击「范围」区域的「选择」按钮,在弹出的资源选择窗口中勾选你项目绑定的JRE系统库,确认后即可将JRE类库纳入搜索范围,不需要使用Java搜索的结构化搜索规则。 - 运行时动态定位修改位置
往项目中加入以下调试代码,只要有代码修改该UIManager属性,就会打印完整调用栈,直接定位到对应Look & Feel的实现类:UIManager.addPropertyChangeListener(evt -> { if ("Button.defaultButtonFollowsFocus".equals(evt.getPropertyName())) { new RuntimeException("属性修改调用栈:").printStackTrace(); } });
你提到的Java搜索对话框界面如下:
实际搜索结果显示,该属性默认在MetalLookAndFeel类的初始化逻辑中设置,部分平台原生Look & Feel(如WindowsLookAndFeel、MacOSLookAndFeel)也会根据系统交互特性覆盖该属性的取值。
内容的提问来源于stack exchange,提问作者Reto Höhener
相关产品推荐
相关产品推荐


