Eclipse中Ctrl+Shift+O自动添加import bsh.This;问题求解
解决Eclipse Luna中Ctrl+Shift+O自动导入
bsh.This的问题 这个问题我之前用Eclipse老版本时也碰到过,核心原因是BeanShell(bsh)的This类被Eclipse的自动组织导入功能误匹配了——大概率你的项目类路径里包含了BeanShell的依赖,而代码里的某些写法(比如this关键字的特殊使用,或者存在同名标识符)让Eclipse误以为需要导入这个类。而且因为类路径里有bsh的jar包,编译器能找到这个类,所以不会报编译错误。
下面是几个快速解决的办法:
排除
bsh.This的自动导入(最推荐)
直接让Eclipse的组织导入功能忽略这个类:- 打开Eclipse的偏好设置:
Window -> Preferences - 导航到
Java -> Code Style -> Organize Imports - 在「Excluded imports」区域点击
Add... - 输入
bsh.This并确认,保存设置
之后再按Ctrl+Shift+O就不会自动添加这个无用的导入了。
- 打开Eclipse的偏好设置:
移除不必要的BeanShell依赖
如果你的项目根本不需要BeanShell,直接找到类路径里的bsh相关jar包(比如bsh.jar),右键选择Build Path -> Remove from Build Path。没有了这个依赖,Eclipse自然找不到bsh.This类,也就不会自动导入了。检查代码中的潜在冲突点
偶尔也可能是代码里的自定义类或标识符和This重名,导致Eclipse的导入匹配逻辑出错。可以全局搜索项目里的This关键字,看看有没有自定义的This类或者变量名,调整这些命名避免冲突。
内容的提问来源于stack exchange,提问作者Brijesh Soni
相关产品推荐
相关产品推荐

