不多说,直接上干货!
一、简介
eclipse可谓是Java开发界的神器,基本占据了大部分的Java开发市场,而且其官方还对其他语言提供支持,如C++,Ruby,JavaScript等等。为什么使用它?我想离不开下面的一些因素:1、开发界面简洁、大方。2、丰富的插件支持。3、为Java量身定做。4、及其人性化设计。
不得不说,eclipse是业界被广为认可的开发利器,所以,对于这么一款软件,我们必须要学会它的使用及优化配置!
二、常用快捷键(以下非常实用)
eclipse提供了丰富的快捷操作,默认提供很多,我们也可以自己手动设置。希望读者朋友们积极补充,不断完善!
文本编辑
查找并替换 Ctrl+F 查找上一个 Ctrl+Shift+K 查找下一个 Ctrl+K 撤销 Ctrl+Z 重做 Ctrl+Y 复制 Ctrl+C
快速修正 Ctrl1+1 恢复上一个选择 Alt+Shift+↓ 内容辅助 Alt+/ 剪切 Ctrl+X 删除 Delete 存盘 Ctrl+s
全部选中 Ctrl+A 上下文信息 Alt+? 全局 放大 Ctrl+= 全局 缩小 Ctrl+- 跳转到类、变量的声明 F3
代码格式化 Ctrl+Shift+f 导入未引用的包 Ctrl+Shift+M 关闭单个窗口 Ctrl+w 整理导入 Ctrl+Shift+o 添加导入 Ctrl+Shift+M
注释代码 Ctrl+/ 取消注释 Ctrl+/ 查找工程中的类 Ctrl+shift+T 组织导入 Ctrl+Shift+O
改写切换 Insert 上滚行 Ctrl+↑ 下滚行 Ctrl+↓ J 切换窗口 Ctrl+f6(改为alt+tab更方便)
调试
断点单步运行 F6 断点进入方法体执行 F5 运行上次程序 F11 调试上次程序 Ctrl + F11
单步返回 F7 单步跳入选择 Ctrl+F5 继续 F8 使用过滤器单步执行 Shift+F5
显示 Ctrl+D 运行上次启动 Ctrl+F11 运行至行 Ctrl+R 添加/去除断点 Ctrl+Shift+B
全局 执行 Ctrl+U 自动修正Ctrl+1
窗口
激活编辑器 F12 切换编辑器 Ctrl+Shift+W 上一个编辑器 Ctrl+Shift+F6 上一个视图 Ctrl+Shift+F7
显示系统菜单 Alt+- 显示标尺上下文菜单 Ctrl+W 上一个透视图 Ctrl+Shift+F8 下一个编辑器 Ctrl+F6
显示视图菜单 Ctrl+F10 下一个视图 Ctrl+F7 下一个透视图 Ctrl+F8
导航
打开结构 Ctrl+F3 打开类型 Ctrl+Shift+T 打开类型层次结构 F4 打开声明 F3 打开外部JavaDoc Shift+F2
打开资源 Ctrl+Shift+R 后退历史记录 Alt+← 前进历史记录 Alt+→ 上一个 Ctrl+, 下一个 Ctrl+.
显示大纲 Ctrl+O 转至上一个成员 Ctrl+Shift+↑ 转至上一个编辑位置 Ctrl+Q 在层次结构中打开类型 Ctrl+Shift+H
转至行 Ctrl+L 转至下一个成员 Ctrl+Shift+↓ 转至匹配的括号 Ctrl+Shift+P
搜索
出现在文件中 Ctrl+Shift+U 打开搜索对话框 Ctrl+H 工作区中的声明 Ctrl+G 工作区中的引用 Ctrl+Shift+G
全部保存 Ctrl+Shift+S 剪切 Ctrl+X 保存 Ctrl+S 打印 Ctrl+P 关闭 Ctrl+F4
全部关闭 Ctrl+Shift+F4 属性 Alt+Enter 新建 Ctrl+N 项目全部构建 Ctrl+B
重构
撤销重构 Alt+Shift+Z 抽取方法 Alt+Shift+M 抽取局部变量 Alt+Shift+L 内联 Alt+Shift+I
移动 Alt+Shift+V 重命名 Alt+Shift+R 重做 Alt+Shift+Y
1. ctrl+shift+r:打开资源
- ctrl+b编译
- ctrl+d删除
2. ctrl+o:快速outline ---》这个是查看一个类中的用那些方法
3. ctrl+e:快速转换编辑器
这组快捷键将帮助你在打开的编辑器之间浏览。使用ctrl+page down或ctrl+page up可以浏览前后的选项卡,但是在很多文件打开的状态下,ctrl+e会更加有效率。
4. ctrl+2,L:为本地变量赋值
5. alt+shift+r:重命名
6. alt+shift+l 以及alt+shift+m:提取本地变量及方法
7. shift+enter及ctrl+shift+enter
Shift+enter在当前行之下创建一个空白行,与光标是否在行末无关。Ctrl+shift+enter则在当前行之前插入空白行。
8. Alt+方向键
这也是个节省时间的法宝。这个组合将当前行的内容往上或下移动。在try/catch部分,这个快捷方式尤其好使。
9. ctrl+m
大显示屏幕能够提高工作效率是大家都知道的。Ctrl+m是编辑器窗口最大化的快捷键。
- Ctrl+1 快速修复(最经典的快捷键,就不用多说了)
- Ctrl+D: 删除当前行
- Ctrl+Alt+↓ 复制当前行到下一行(复制增加)
- Ctrl+Alt+↑ 复制当前行到上一行(复制增加)
- Alt+↓ 当前行和下面一行交互位置(特别实用,可以省去先剪切,再粘贴了)
- Alt+↑ 当前行和上面一行交互位置(同上)
- Alt+← 前一个编辑的页面
- Alt+→ 下一个编辑的页面(当然是针对上面那条来说了)
- Alt+Enter 显示当前选择资源(工程,or 文件 or文件)的属性
- Shift+Enter 在当前行的下一行插入空行(这时鼠标可以在当前行的任一位置,不一定是最后)
- Shift+Ctrl+Enter 在当前行插入空行(原理同上条)
- Ctrl+Q 定位到最后编辑的地方
- Ctrl+L 定位在某行 (对于程序超过100的人就有福音了)
- Ctrl+M 最大化当前的Edit或View (再按则反之)
- Ctrl+/ 注释当前行,再按则取消注释
- Ctrl+O 快速显示 OutLine
- Ctrl+T 快速显示当前类的继承结构
- Ctrl+W 关闭当前Editer
- Ctrl+K 参照选中的Word快速定位到下一个
- Ctrl+E 快速显示当前Editer的下拉列表(如果当前页面没有显示的用黑体表示)
- Ctrl+/(小键盘) 折叠当前类中的所有代码
- Ctrl+×(小键盘) 展开当前类中的所有代码
- Ctrl+Space 代码助手完成一些代码的插入(但一般和输入法有冲突,可以修改输入法的热键,也可以暂用Alt+/来代替)
- Ctrl+Shift+E 显示管理当前打开的所有的View的管理器(可以选择关闭,激活等操作)
- Ctrl+J 正向增量查找(按下Ctrl+J后,你所输入的每个字母编辑器都提供快速匹配定位到某个单词,如果没有,则在stutes line中显示没有找到了,查一个单词时,特别实用,这个功能Idea两年前就有了)
- Ctrl+Shift+J 反向增量查找(和上条相同,只不过是从后往前查)
- Ctrl+Shift+F4 关闭所有打开的Editer
- Ctrl+Shift+X 把当前选中的文本全部变味小写
- Ctrl+Shift+Y 把当前选中的文本全部变为小写
- Ctrl+Shift+F 格式化当前代码
- Ctrl+Shift+P 定位到对于的匹配符(譬如{}) (从前面定位后面时,光标要在匹配符里面,后面到前面,则反之)
- 下面的快捷键是重构里面常用的,本人就自己喜欢且常用的整理一下(注:一般重构的快捷键都是Alt+Shift开头的了)
- Alt+Shift+R 重命名 (是我自己最爱用的一个了,尤其是变量和类的Rename,比手工方法能节省很多劳动力)
- Alt+Shift+M 抽取方法 (这是重构里面最常用的方法之一了,尤其是对一大堆泥团代码有用)
- Alt+Shift+C 修改函数结构(比较实用,有N个函数调用了这个方法,修改一次搞定)
- Alt+Shift+L 抽取本地变量( 可以直接把一些魔法数字和字符串抽取成一个变量,尤其是多处调用的时候)
- Alt+Shift+F 把Class中的local变量变为field变量 (比较实用的功能)
- Alt+Shift+I 合并变量(可能这样说有点不妥Inline)
- Alt+Shift+V 移动函数和变量(不怎么常用)
- Alt+Shift+Z 重构的后悔药(Undo)
- 编辑
- 作用域 功能 快捷键
- 全局 查找并替换 Ctrl+F
- 文本编辑器 查找上一个 Ctrl+Shift+K
- 文本编辑器 查找下一个 Ctrl+K
- 全局 撤销 Ctrl+Z
- 全局 复制 Ctrl+C
- 全局 恢复上一个选择 Alt+Shift+↓
- 全局 剪切 Ctrl+X
- 全局 快速修正 Ctrl1+1
- 全局 内容辅助 Alt+/
- 全局 全部选中 Ctrl+A
- 全局 删除 Delete
- 全局 上下文信息 Alt+?
- Alt+Shift+?
- Ctrl+Shift+Space
- Java编辑器 显示工具提示描述 F2
- Java编辑器 选择封装元素 Alt+Shift+↑
- Java编辑器 选择上一个元素 Alt+Shift+←
- Java编辑器 选择下一个元素 Alt+Shift+→
- 文本编辑器 增量查找 Ctrl+J
- 文本编辑器 增量逆向查找 Ctrl+Shift+J
- 全局 粘贴 Ctrl+V
- 全局 重做 Ctrl+Y
- 查看
- 作用域 功能 快捷键
- 全局 放大 Ctrl+=
- 全局 缩小 Ctrl+-
- 窗口
- 作用域 功能 快捷键
- 全局 激活编辑器 F12
- 全局 切换编辑器 Ctrl+Shift+W
- 全局 上一个编辑器 Ctrl+Shift+F6
- 全局 上一个视图 Ctrl+Shift+F7
- 全局 上一个透视图 Ctrl+Shift+F8
- 全局 下一个编辑器 Ctrl+F6
- 全局 下一个视图 Ctrl+F7
- 全局 下一个透视图 Ctrl+F8
- 文本编辑器 显示标尺上下文菜单 Ctrl+W
- 全局 显示视图菜单 Ctrl+F10
- 全局 显示系统菜单 Alt+-
- 导航
- 作用域 功能 快捷键
- Java编辑器 打开结构 Ctrl+F3
- 全局 打开类型 Ctrl+Shift+T
- 全局 打开类型层次结构 F4
- 全局 打开声明 F3
- 全局 打开外部javadoc Shift+F2
- 全局 打开资源 Ctrl+Shift+R
- 全局 后退历史记录 Alt+←
- 全局 前进历史记录 Alt+→
- 全局 上一个 Ctrl+,
- 全局 下一个 Ctrl+.
- Java编辑器 显示大纲 Ctrl+O
- 全局 在层次结构中打开类型 Ctrl+Shift+H
- 全局 转至匹配的括号 Ctrl+Shift+P
- 全局 转至上一个编辑位置 Ctrl+Q
- Java编辑器 转至上一个成员 Ctrl+Shift+↑
- Java编辑器 转至下一个成员 Ctrl+Shift+↓
- 文本编辑器 转至行 Ctrl+L
- 搜索
- 作用域 功能 快捷键
- 全局 出现在文件中 Ctrl+Shift+U
- 全局 打开搜索对话框 Ctrl+H
- 全局 工作区中的声明 Ctrl+G
- 全局 工作区中的引用 Ctrl+Shift+G
- 文本编辑
- 作用域 功能 快捷键
- 文本编辑器 改写切换 Insert
- 文本编辑器 上滚行 Ctrl+↑
- 文本编辑器 下滚行 Ctrl+↓
- 文件
- 作用域 功能 快捷键
- 全局 保存 Ctrl+X
- Ctrl+S
- 全局 打印 Ctrl+P
- 全局 关闭 Ctrl+F4
- 全局 全部保存 Ctrl+Shift+S
- 全局 全部关闭 Ctrl+Shift+F4
- 全局 属性 Alt+Enter
- 全局 新建 Ctrl+N
- 项目
- 作用域 功能 快捷键
- 全局 全部构建 Ctrl+B
- 源代码
- 作用域 功能 快捷键
- Java编辑器 格式化 Ctrl+Shift+F
- Java编辑器 取消注释 Ctrl+\
- Java编辑器 注释 Ctrl+/
- Java编辑器 添加导入 Ctrl+Shift+M
- Java编辑器 组织导入 Ctrl+Shift+O ----->自动导入包,当然也会清除掉多余的包
- Java编辑器 使用try/catch块来包围 未设置,太常用了,所以在这里列出,建议自己设置。
- 也可以使用Ctrl+1自动修正。
- 运行
- 作用域 功能 快捷键
- 全局 单步返回 F7
- 全局 单步跳过 F6
- 全局 单步跳入 F5
- 全局 单步跳入选择 Ctrl+F5
- 全局 调试上次启动 F11
- 全局 继续 F8
- 全局 使用过滤器单步执行 Shift+F5
- 全局 添加/去除断点 Ctrl+Shift+B
- 全局 显示 Ctrl+D
- 全局 运行上次启动 Ctrl+F11
- 全局 运行至行 Ctrl+R
- 全局 执行 Ctrl+U
- 重构
- 作用域 功能 快捷键
- 全局 撤销重构 Alt+Shift+Z
- 全局 抽取方法 Alt+Shift+M
- 全局 抽取局部变量 Alt+Shift+L
- 全局 内联 Alt+Shift+I
- 全局 移动 Alt+Shift+V
- 全局 重命名 Alt+Shift+R
- 全局 重做 Alt+Shift+Y
文件
新建普通文本 Ctrl+N 新建普通的文本文档
新建浏览器窗口 Ctrl+Shift+B 新建浏览器窗口
新建 HTML 页 Ctrl+Shift+N 创建一个空白的 HTML 页面
打开 Ctrl+O 打开一个现有的文档
打开头文件 Ctrl+Shift+H 打开 C/C++ 文件的头文件
打印 Ctrl+P 打印当前文档
保存 Ctrl+S 保存当前文档
光标
移动光标到上一个制表符Shift+Tab 移动光标到上一个制表符的位置
左移一个字符 Left 光标向左移动一个字符
选区向左扩展一个字符 Shift+Left 将选定区域向左扩展一个字符
右移一个字符 Right 光标向右移动一个字符
选区向右扩展一个字符 Shift+Right 将选定区域向右扩展一个字符
文件结尾 Ctrl+End 移动到文档结尾处
选区扩展到文档结尾处 Ctrl+Shift+End 将选定区域扩展到文档结尾处
文件开始 Ctrl+Home 移动到文档开始处
选区扩展到文档开始处 Ctrl+Shift+Home 将选定区域扩展到文档开始处
下移 Down 光标下移一行
选区扩展到下一行 Shift+Down 将选定区域扩展到下一行
移动光标到行末 End 移动光标到当前行行末
选区扩展到当前行行末 Shift+End 将选定区域扩展到当前行行末
移动光标到行首 Home 移动光标到当前行行首
选区扩展到当前行行首 Shift+Home 将选定区域扩展到当前行行首
上移 Up 光标上移一行
选区扩展到上一行 Shift+Up 将选定区域扩展到上一行
光标下移一页 Page Down 光标下移一页
选区扩展到下一页 Shift+Page Down 将选定区域扩展到下一页
光标上移一页 Page Up 光标上移一页
选区扩展到上一页 Shift+Page Up 将选定区域扩展到上一页
向下滚动 Ctrl+Down 向下滚动一行
向上滚动 Ctrl+Up 向上滚动一行
光标移动到屏幕底部 Ctrl+Page Down 光标移动到当前屏幕底部
选区扩展到屏幕底部 Ctrl+Shift+Page Down 将选定区域扩展到当前屏幕底部
光标移动到屏幕顶部 Ctrl+Page Up 光标移动到当前屏幕顶部
选区扩展到屏幕顶部 Ctrl+Shift+Page Up 将选定区域扩展到当前屏幕顶部
移动到上一个单词 Ctrl+Left 移动到上一个单词
选区扩展到上一个单词 Ctrl+Shift+Left 将选定区域扩展到上一个单词
移动到下一个单词 Ctrl+Right 移动到下一个单词
选区扩展到下一个单词 Ctrl+Shift+Right 将选定区域扩展到下一个单词
编辑
删除光标左侧的单词 Backspace 删除光标左侧的单词
删除光标左侧的单词 Backspace 删除光标左侧的单词
删除光标左侧的单词 Ctrl+Backspace 删除光标左侧的单词
单词首字母大写 Ctrl+Shift+U 选定文本中单词的首字母大写
删除 Delete 删除选定内容
列选择 Alt+C 开始列选择
复制 Ctrl+C 复制选定内容到剪贴板
追加复制 Ctrl+Shift+C 复制选定文本并追加到剪贴板钟
剪切 Ctrl+X 剪切选定内容到剪贴板
追加剪切 Ctrl+Shift+X 剪切选定文本并追加到剪贴板钟
日期 Ctrl+D 插入当前日期
长型日期 Ctrl+Shift+D 插入当前日期(长型)
减小缩进 Ctrl+Shift+I 减小当前行或选定块的缩进
删除到行结束 Ctrl+Shift+Delete 删除到当前行结束位置
删除到单词结束 Ctrl+Delete 删除到当前单词结束位置
删除行 Alt+Shift+Delete 删除当前行
删除单词 Alt+Delete 删除当前单词
创建字符副本 Ctrl+- 复制上一行的一个字符到当前行
创建当前行副本 Ctrl+J 创建当前行的副本
搜索剪辑文本 F2 使用对应的剪辑文本替换当前单词
增大缩进 Ctrl+I 增大当前行或选定块的缩进
插入模式 Insert 切换插入模式与覆盖模式
反转大小写 Ctrl+K 反转选定文本的大小写
和并行 Ctrl+Shift+J 合并选定行
粘贴 Ctrl+V 插入剪贴板内容
重做 Ctrl+Y 重做上次未完成的操作
重新排列段落格式 Ctrl+Shift+R 按照自动换行列号重新排列段落格式
搜索文档 Shift+F2 使用在当前文档中找到的扩展单词替换当前单词
搜索所有打开的文件 Ctrl+F2 使用在所有打开的文件中找到的扩展单词来替换当前单词
开始/结束选择 Alt+Shift+B 开始或结束选择
全选 Ctrl+A 选择整合文档
开始/结束列选择 Alt+Shift+E 开始或结束列选择
选择行 Ctrl+R 选择当前行
选择单词 Ctrl+W 选择当前单词
分割行 Ctrl+Shift+K 分割选定行(必须启用自动换行)
移除 HTML 标签 Ctrl+Shift+P 移除当前文档或选定文本的 HTML 标签
时间 Ctrl+M 插入当前时间
时间(包含秒钟) Ctrl+Shift+M 插入当前时间(包含秒钟)
小写 Ctrl+L 转换选定的文本为小写
大写 Ctrl+U 转换选定的文本为大写
调换字符位置 Ctrl+T 调转光标两侧字符的位置
撤消 Ctrl+Z 撤消上次操作
查看
在浏览器中查看 Ctrl+B 载入当前文档到网页浏览器
折叠 Ctrl+Num - 折叠当前代码段
全部折叠 Ctrl+Alt+Num - 折叠所有缩进的文本
折叠一层 Ctrl+Shift+Num - 折叠整个代码一层
目录窗口 Alt+Shift+3 显示或隐藏目录窗口
展开 Ctrl+Num + 展开当前折叠的行
全部展开 Ctrl+Alt+Num + 展开所有折叠的文本
展开一层 Ctrl+Shift+Num + 展开整个代码一层
转到剪辑文本/目录 F5 在剪辑文本/目录窗口与文档间切换焦点
使用代码折叠 Ctrl+Shift+F 启用或禁用代码折叠功能
全屏模式 Alt+Shift+0 全屏模式开/关
转到输出窗口 Shift+F5 在输出窗口与文档间切换焦点
光标指示符 Alt+Shift+C 显示或隐藏光标指示符
制表符与空格 Alt+Shift+I 显示或隐藏制表符与空格
行号 Ctrl+Shift+L 显示或隐藏当前文档的行号
换行符 Alt+Shift+L 显示或隐藏换行符
输出窗口 Alt+Shift+2 显示或隐藏输出窗口
标尺 Alt+Shift+R 显示或隐藏标尺
剪辑文本窗口 Alt+Shift+1 显示或隐藏剪辑文本窗口
URL 高亮 Alt+Shift+U 高亮显示 URL 与 e-mail 地址
搜索
查找 Alt+F3 查找指定文本
查找下一个 F3 查找下一个匹配文本
查找上一个 Shift+F3 查找上一个匹配的文本
替换 Ctrl+H 使用不同的文本替换指定的文本
配对括号 Ctrl+] 搜索一个匹配的括号
清除所有标记 Ctrl+Shift+F9 清除当前文档中的所有标记
函数列表 Ctrl+F11 显示函数列表
转到行 Ctrl+G 转到当前文档的指定行
转到列 Ctrl+Shift+G 转到当前行中的指定列
转到文件 F7 使用输出窗口模式转到一个文件
下一个标记 F4 转到下一个标记位置
查找下一个单词 Ctrl+F3 向下查找当前单词或选定的文本
上一个标记 Shift+F4 转到上一个标记位置
查找上一个单词 Ctrl+Shift+F3 向上查找当前单词或选定的文本
选择括号 Ctrl+Shift+] 搜索一对匹配的括号并选择该文本
切换标记 F9 设置或清除当前行的标记
转到 URL F8 转到高亮的 URL
文档
列标记 Alt+Shift+M 显示或隐藏列标记
自动换行 Ctrl+Shift+W 切换当前文档的自动换行功能
HTML
浏览器
编辑源文件 Ctrl+E 编辑当前 HTML 页面的源文件
剪辑文本
复制 Ctrl+Shift+Insert 复制选定的剪辑文本项目
目录
工程
停止 Ctrl+Break 停止当前工具的操作
打开下一个 Ctrl+F5 打开下一个匹配的文件
打开上一个 Ctrl+Shift+F5 打开上一个匹配的文件
用户工具 1 Ctrl+1 运行该用户定义工具
用户工具 10 Ctrl+0 运行该用户定义工具
用户工具 2 Ctrl+2 运行该用户定义工具
用户工具 3 Ctrl+3 运行该用户定义工具
用户工具 4 Ctrl+4 运行该用户定义工具
用户工具 5 Ctrl+5 运行该用户定义工具
用户工具 6 Ctrl+6 运行该用户定义工具
用户工具 7 Ctrl+7 运行该用户定义工具
用户工具 8 Ctrl+8 运行该用户定义工具
用户工具 9 Ctrl+9 运行该用户定义工具
群组 1 Ctrl+Shift+1 使用工具组 1
群组 10 Ctrl+Shift+0 使用工具组 10
群组 2 Ctrl+Shift+2 使用工具组 2
群组 3 Ctrl+Shift+3 使用工具组 3
群组 4 Ctrl+Shift+4 使用工具组 4
群组 5 Ctrl+Shift+5 使用工具组 5
群组 6 Ctrl+Shift+6 使用工具组 6
群组 7 Ctrl+Shift+7 使用工具组 7
群组 8 Ctrl+Shift+8 使用工具组 8
群组 9 Ctrl+Shift+9 使用工具组 9
记录击键 Ctrl+Q 开始/停止击键记录
播放记录 1 Alt+1 播放击键记录 1
播放记录 10 Alt+0 播放击键记录 10
播放记录 2 Alt+2 播放击键记录 2
播放记录 3 Alt+3 播放击键记录 3
播放记录 4 Alt+4 播放击键记录 4
播放记录 5 Alt+5 播放击键记录 5
播放记录 6 Alt+6 播放击键记录 6
播放记录 7 Alt+7 播放击键记录 7
播放记录 8 Alt+8 播放击键记录 8
播放记录 9 Alt+9 播放击键记录 9
工具
下一窗格 F6 切换到下一个窗格
前一窗格 Shift+F6 切换回前一个窗格
上次访问的窗口 F12 切换到上次访问的文档窗口
窗口列表 F11 显示所有文档窗口的列表
下一个窗口 Ctrl+Tab 切换到下一个文档窗口
上一个窗口 Ctrl+Shift+Tab 切换到上一个文档窗口
总在最前 Alt+A 使 EditPlus 窗口总在最前
窗口
帮助 Shift+F1 显示按钮、菜单或窗口所对应的帮助
帮助 F1 显示对当前任务或命令的帮助
三、使用技巧
1、查看源码
当我们在一个方法上按F3或者按着ctrl+鼠标左键的时候,我们会进行跟踪,当我们在一个类上进行上述操作的时候,会跟踪到这个类的源码,但是有时候,类的源码不一定被引用进来,大多数时候我们需要手动引入,举个例子:我们想看下String类的源码,在String上按F3,如果已经引入源码,会直接跳到源码里,如果没有引入,则会出现:
点击:Attach Source:
External File就是指一个源码包,一般都是压缩文件,External Folder是指文件夹,此处我们点击External File,因为JDK默认带有源码包,
这样就将源码加载进来了,是不是很爽啊!
2、使用JD插件
JD插件是用来查看Java源码的,直接可以将.class的文件打开,为什么我们要使用JD插件,原因很简单,不是所有的Java类都可以找到源码,像JDK或者SSH这些容易找到源码,但是有些个人完成的程序,没有提供源码,只有.class的文件,如果我们想要查看其源码,就只能将.class文件进行反编译,但是这有个问题就是反编译出来的东西不一定是作者原来的代码,所以,这样查看源码并不完全准确,因此,如果能找到源码,还是尽量读源码,找不到源码的,再用反编译工具。JDK自带一个工具叫jad,本文将要介绍JD,JD分两种,一个是桌面应用JD-GUI,我们可以单独下载一个jd-gui.exe,免安装的,直接将.class文件拖进去就可以查看,一个是JD-ECLIPSE,作为eclipse的插件,我之前用过myeclipse6.x和eclipse都可以直接安装,但是高版本的myeclipse就不行,需要多点步骤。这个插件可以让你在没有源码的时候轻松查看Java类的源码。只不过是经过反编译的,和源码有点不同,不过,由于Java字节码是很容易进行反编译的,所以在没有源码的情况下,用JD查看的源代码还是不错的。
3、设置eclipse像virtual studio那么方便
一般默认情况下,Eclipse ,MyEclipse代码里面的代码提示功能默认的一般 是点“.”,一般是有了点“.”,才会有代码提示。相信有过C#开发经验的朋友,一定对VS感觉很不错,异常强大的提示功能让你惊叹不已,其实eclipse也是可以经过设置达到那个效果的,下面我就写一下方法:
原理:“Auto Activation triggers for java”这个选项就是指触发代码提示的的选项,把“.” 改成.abcdefghijklmnopqrstuvwxyz(,就是指遇到26个字母和.都会进行提示
1、 打开MyEclipse,然后“window”→“Preferences”
2、 选择“java”,展开,“Editor”,选择“Content Assist”。
3、选择“Content Assist”,然后看到右边,右边的“Auto-Activation”下面的“Auto Activation triggers for java”这个选项。其实就是指触发代码提示的就是“.”这个符号.
4、 “Auto Activation triggers for java”这个选项,在“.”后加abc字母,方便后面的查找 修改。然后“apply”,点击“OK”。
5、然后,“File”→“Export”,在弹出的窗口中选择“Perferences”,点击“下一步”。
6、选择导出文件路径,本人导出到桌面,输入“conf”作为文件名,点击“保存”。
7、在桌面找到刚在保存的文件“conf.epf”,右键选择“用记事本打开”。
8、可以看到很多配置MyEclipse的信息
9、按“ctrl + F”快捷键,输入“.abc”,点击“查找下一个”。
10、 查找到“.abc”的配置信息.
11、把“.abc”改成“.abcdefghijklmnopqrstuvwxyz(,”,保存,关闭“conf.epf”。
12、 回到MyEclipse界面,“File”→“Import”,在弹出的窗口中选择“Perferences”,点击 “下一步”,选择刚在已经修改的“conf.epf”文件,点击“打开”,点击“Finish”。该步骤和上面 的导出步骤类似。
13、 最后当然是进行代码测试了。随便新建一个工程,新建一个类。在代码输入switch,foreach等进行 测试。你立即会发现,果然出了提示,而且无论是敲哪个字母都会有很多相关的提示了,很流畅,很方便。
4、查看项目下的所有文件
在默认的package explorer视图下,是不能看见完全的文件的,此时,这要切换下视图就可以了,切换到:Navigator就可以了。
5、windows 7使用eclipse 高版本没有Courier New 字体的解决办法:
(1)、找到jFace并用WinRAR打开之:
jFace的具体位置:$Eclipse目录$/plugins/org.eclipse.jface_3.7.0.v20110928-1505.jar,找到后,用WinRAR打开。
(2)、找到并修改字体属性:
打开后,依次展开:/org/eclipse/jface/resources,这里,你将看到不同操作系统的字体设置,比如 jfacefonts_hp_ux,properties里保存了HP-UX系统的字体设置,jfacefonts_macosx.properties 则保存了MacX的字体设置。找到Windows7的字体设置,双击,随便用一个文本编译器打开,找到 org.eclipse.jface.textfont.0的配置项,将其设置成CourierNew-regular即可,后面还可以设置字号。修改完成后,保存,WinRAR自动更新jar包。
注意:修改的时候将eclipse关闭,否则修改不成功。
如果修改完以后重启eclipse还是看不到字体使用以下方法
进入windows控制面板->字体 找到Courier New右击“显示”即可
6、自定义快捷键
windows->preference->general->keys将里面冲突的解决掉就行了。
7.eclipse实现拖拽功能
有一个叫VE(Virtual Editor)的插件安装了即可。
8、将jar转成exe文件
实现方式:Eclipse搭配JSmooth
(1)、先由Eclipse制作包含Manifest的JAR。
(2)、使用JSmooth将做好的JAR包装成EXE。
JSmooth下载页面:http://jsmooth.sourceforge.net/index.php
(3)、制作完成的exe文件,可在有装置JRE的Windows上执行。
9、取消一些校验
使用eclipse for javaee时,有时js文件上总是有个小红叉,原因是eclipse校验造成的,每个版本的eclipse校验语法不一样,所以有时在一个eclipse上不报错,到了另一个就报错了,虽然不影响使用,但是总看着难受,用下面的方法可以消除掉这个小红叉。找到工程下的.project文件,用文本编辑器打开修改内容下,红色字是注掉的:
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>Spider</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<!-- <buildCommand>
<name>org.eclipse.wst.jsdt.core.javascriptValidator</name>
<arguments>
</arguments>
</buildCommand> -->
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.wst.common.project.facet.core.builder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.wst.validation.validationbuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
<nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
<nature>org.eclipse.wst.common.project.facet.core.nature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
<!-- <nature>org.eclipse.wst.jsdt.core.jsNature</nature> -->
</natures>
</projectDescription>
优化eclipse启动
最近自从eclipse安装了很多插件以后,启动变得非常的慢,每次启动,要消耗近半分钟.这是不正常的. 今天决定好好优化一下.
我所使用的eclipse是Eclipse JAVA EE IDE for Web Developers 3.8版本. 跑在MAC OSX上, SSD+8G RAM, 这么高性能的机器竟然不能秒开eclipse, 这太说不过去了. 哦,还有我使用的JVM是Oracle的HotSpot,来自于JDK1.6 64bit.
首先,在优化前,让我们看看eclipse启动时,JVM的各项性能指标. 因为我并不能准确的判定eclipse的启动完成时间, 所以我只能说大约事件.
首先启动JDK自带的JVM性能监视工具,在java\bin的目录下,有一个jvisualvm,它是绑定在JDK中的visualvm.双击启动 visualvm. 然后启动eclipse, 在eclipse启动完成以后,使用visualvm的查看eclipse的Visual GC情况, 如图:
上图中说明在eclipse的启动过程中,JIT对字节码进行了向机器码的编译,花去了22秒的时间.Class加载花去了10秒的时间,Minor GC发生了72次,花去0.64秒,Full GC发生了12次,仅仅花去了61毫秒.
我们再去MBean选项查看,发现新生代使用ParNew垃圾收集器,而老年代使用的是CMS垃圾收集器.
总上情况看出,由于MAC的性能比较好,所以垃圾回收并没有消耗太多的时间,并且CMS+ParNew本身就是并行垃圾回收,不会造成用户程序太多的停顿. 时间主要消耗在了JIT的即时编译和Class加载上了.
首先要优化的就是class加栽.因为eclipse这个工具是一个成熟的工具,经过了这么多人的验证,所以我充分信任eclipse的代码,允许 eclipse的代码在加载的时候,跳过字节码验证. 关闭字节码验证的方法是在vm的args中加入参数 -Xverify:none. 对于eclipse来说,找到eclipse.ini, 加入-Xverify:none. 让我们再重启一下eclipse,看看class加载时间是否减小. 再次启动,发现class加载事件缩小到7秒,比之前少了3秒.
然后优化的是JIT的时间. 在使用eclipse编写程序时,主要是文本编辑,编译和运行,JIT虽然可以带给我们高性能,但是JIT在编译机器码的时候,却要消耗很多的时间. eclipse对项目的编译和运行本身就很慢,切运行时是启动一个新的java进程,跟eclipse本身无关,所以,我可以接受抛弃JIT编译器,而只是用JVM解释器执行字节码所带来的效率降低. 这样可以去除JIT编译的时间. 做法如下,在eclipse.ini中加入vm的参数 -Xint, 意思是只使用解释器. 让我们来看看结果:
JVM编译器时间变成了0, 一下减掉20秒. 但是,由于缺少了运行时的即时编译优化方案,代码的运行时间变长了, eclipse的整体启动时间慢了更多,超过了30秒. 由此可见,JIT是多么有用的一项技术.所以禁止JIT的尝试失败了.我们把之前的参数-Xint去掉.
哦,对了,我还装了很多的插件,尤其是android开发插件.启动的时候对插件的激活也会花去很多时间. 屏蔽插件激活的方法: Windows -> Preferences, 输入 “startup”, 点击 “Startup and Shutdown”, 把不需要的插件勾掉. 此外,还需要关掉不必要的validation,方法为:Windows -> Preferences -> Validation. 只选你需要的.
做完以上工作,我发现eclipse启动稍微快了一些. 掐着秒表计算的花了大约15秒.
最后,再优化一下GC和堆栈吧.虽然说,GC已经表现的很好了,都没有超过1秒,但是GC的频率如此高,说明JVM的内存的分配是不合理的.为此,我们需要重新对JVM内存进行划分. 为了对JVM的内存进行合理分配,我们需要了解eclipse启动过程中,GC到底发生了什么事情. 打开gc log的方法如下:
想eclipse.ini的vm参数中添加
-XX:+PrintGCDetails -Xloggc:/users/joey/Documents/gc.log
启动eclipse,生成gc.log, 打开log,进行分析.
第一次Minor GC发现,新生代的大小约为20M. 堆的大小约为40M. 再接下来的GC中,新生代始终没有扩容.这说明,新生代的大小合适.
0.720: [GC 0.720: [ParNew: 17024K->2112K(19136K), 0.0099529 secs] 17024K->2324K(38848K), 0.0100285 secs] [Times: user=0.03 sys=0.00, real=0.01 secs]
第一次发生Full GC时,发现老年代已经扩容到约93M,而永生代扩容到约128M
67.213: [Full GC (System) 67.213: [CMS: 57969K->57877K(93124K), 0.3563491 secs] 62179K->57877K(112260K), [CMS Perm : 80490K->80392K(128708K)], 0.3565176 secs] [Times: user=0.36 sys=0.00, real=0.36 secs]
而直到最后一次GC, 老年代占用也没超过125M,永生带占用也没有超过125M. 但他们的占用空间均超过了100M. 由此,我们有理由规定一个初始堆大小. 最终,通过分析,我给eclipse.ini添加了如下几个参数:
-server
-Xverify:none
-XX:PermSize=128m
-XX:MaxPermSize=256m
-Xms256m
-Xmx512m
-Xmn40m
-Xss2m
-server是让JVM以server模式运行,加重JIT的优化作用,由于eclipse是经常开着不关,在server模式下,JIT会随着运行的时间,把字节码更深刻的变成成机器代码.加快运行速度.
-Xverify:none, 跳过对字节码的验证.
PermSize永生带设置为128M,堆的初始大小设置为256M,新生代站了40M. 每个线程栈大小设为2M.
在这种设置下,Full GC已经完全消失,但还是剩下了20次左右的Minor GC,大约花掉0.3秒, 这是可以接受的. 如果为了完全消除GC而把新生代的空间设大,那也是一种内存的浪费. 重启eclipse,启动时间已经落在了15秒之内.如图:
补充eclipse 使用ant编译,console出现中文乱码问题。
解决办法:
打开菜单:Run--External Tool--External Tools...
打开ant配置,Common这个Tab 里,ConsoleEncoding设置编码为UTF-8/GBK,搞定!
补充:eclipse以英文界面启动
有时启动了eclipse,但是是中文界面,想换成英文界面的话,很简单,右键启动图标,出现如下画面:
在目标的最后,空一格,加上-nl en_US,如下:
确定即可。
在Eclipse里面设置了java文件保存时自动格式化,
在java->Code Style->Formatter里设置了自定义的格式化的样式,这样每次保存后都会自动格式化代码.
java->editor->Save Actions->Format Source Code
取消勾选,即取消了保存时自动格式化的功能。
同时,大家可以关注我的个人博客:
http://www.cnblogs.com/zlslch/ 和 http://www.cnblogs.com/lchzls/ http://www.cnblogs.com/sunnyDream/
详情请见:http://www.cnblogs.com/zlslch/p/7473861.html
人生苦短,我愿分享。本公众号将秉持活到老学到老学习无休止的交流分享开源精神,汇聚于互联网和个人学习工作的精华干货知识,一切来于互联网,反馈回互联网。
目前研究领域:大数据、机器学习、深度学习、人工智能、数据挖掘、数据分析。 语言涉及:Java、Scala、Python、Shell、Linux等 。同时还涉及平常所使用的手机、电脑和互联网上的使用技巧、问题和实用软件。 只要你一直关注和呆在群里,每天必须有收获
对应本平台的讨论和答疑QQ群:大数据和人工智能躺过的坑(总群)(161156071)