`
2277259257
  • 浏览: 515330 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Java之美[从菜鸟到高手演变]之eclipse的使用、优化配置

 
阅读更多

作者:egg

邮箱:xtfggef@gmail.com

微博:http://weibo.com/xtfggef

博客:http://blog.csdn.net/zhangerqing(转载请说明出处)

 

一、简介

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、查看源码

当我们在一个方法上按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 字体的解决办法:

Eclipse3.7.2默认字体为Consolas,而Eclipse3.5默认为Courier New,对于用惯了CourierNew的人来说,Consolas看着有点不舒服,但是Eclipse3.7.2中在修改字体时,找不到Courier New字体。可以通过以下方法修改为Courier New(改动过程中先关闭Eclipse): 

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右击“显示”即可
作者:egg

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下的jquery文件还有小红叉,因为修改对原来的文件还没有起作用,所以需要把相应的jquery文件删除,重新添加即可。
 
下面是转载的一段关于优化eclipse启动的文章,转载自:http://web.itivy.com/article-180-1.html

最近自从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
取消勾选,即取消了保存时自动格式化的功能.

分享到:
评论

相关推荐

    java 从菜鸟到高手.rar

    本资源"java 从菜鸟到高手.rar"似乎是一个针对Java初学者的综合教程,旨在帮助新手快速掌握Java的核心概念和技术。 首先,基础部分会涵盖Java语言的基本语法,包括数据类型(如整型、浮点型、字符型、布尔型)、...

    Java培训教程 菜鸟到高手

    总的来说,"Java培训教程 菜鸟到高手"涵盖了从入门到精通所需的所有知识,包括基础语法、面向对象编程、集合框架、多线程、异常处理、I/O、数据库操作以及现代Java特性和测试实践。通过这个教程的学习,读者不仅能...

    Java图解创意编程:从菜鸟到互联网大厂之路.pptx

    "Java图解创意编程:从菜鸟到互联网大厂之路" 《Java图解创意编程:从菜鸟到互联网大厂之路》这本书是一本面向初学者的编程书籍,旨在帮助读者从零基础开始学习Java编程,并逐步掌握互联网大厂常用的核心技术。本书...

    电脑菜鸟到高手必经之路

    在电脑技术领域,从一个新手成长...总的来说,从电脑菜鸟到高手的道路上,需要系统学习,不断实践,勇于探索新知,保持对技术的热情和好奇心。只有这样,才能在信息技术的海洋中游刃有余,逐步成为一名真正的电脑高手。

    从Java菜鸟到专家的资料

    这份名为“从Java菜鸟到专家的资料”的压缩包文件包含了丰富的学习资源,旨在帮助初学者逐步成长为Java领域的专家。以下是对各个文件的详细解读: 1. **J2EE研究文集.chm**:这个文件专注于Java企业级应用开发,...

    清华尹成C语言从菜鸟到高手.pdf

    清华尹成C语言从菜鸟到高手.pdf

    Android面试题从菜鸟到高手

    就业参考资料,Android面试题从菜鸟到高手,扩展就业面。值得看 就业参考资料,Android面试题从菜鸟到高手,扩展就业面。值得看就业参考资料,Android面试题从菜鸟到高手,扩展就业面。值得看就业参考资料,Android...

    从菜鸟到高手

    ### 从菜鸟到高手——电脑知识与故障诊断详解 #### 一、概述 在《从菜鸟到高手》这篇文档中,作者分享了一系列有关电脑基础知识及故障排除的经验与技巧。尽管文档中的部分内容链接已经失效,但我们仍能从中提炼出...

    电脑从菜鸟到高手必经之路

    "电脑从菜鸟到高手必经之路"这个主题涵盖了计算机基础知识、操作系统操作、网络技术以及黑客入门等多个知识点,这些都是提升个人技能的重要组成部分。 首先,我们要理解电脑的基础知识。这包括硬件组件,如CPU...

    菜鸟EclipseRCP学习之路

    总的来说,"菜鸟Eclipse RCP学习之路"是一段充满挑战和收获的旅程,涵盖了从基础的Eclipse RCP概念到实际项目开发的诸多细节。通过这个过程,开发者不仅能学会如何构建桌面应用,还能理解软件架构设计和组件化开发的...

    Java之美[从菜鸟到高手演变]之设计模式

    总体来说设计模式分为三大类:创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式...

    51菜鸟到arm高手

    51菜鸟到arm高手51菜鸟到arm高手51菜鸟到arm高手51菜鸟到arm高手51菜鸟到arm高手51菜鸟到arm高手51菜鸟到arm高手51菜鸟到arm高手

    c语言从菜鸟到高手的进阶 pdf

    《C语言从菜鸟到高手的进阶》是一本旨在帮助初学者逐步提升C语言技能的教程。这本书深入浅出地讲解了C语言的基础概念、语法结构以及高级特性,旨在让读者从入门到精通,实现从“菜鸟”到“高手”的飞跃。通过阅读...

    [网盘]java程序员由菜鸟到笨鸟.pdf

    ### Java程序员成长之路——从菜鸟到笨鸟 #### 一、引言 《Java程序员由菜鸟到笨鸟》是一本由曹胜欢编写的书籍,旨在帮助初学者掌握Java编程的基础知识,并逐步进阶至更高级的应用场景。本书不仅适合初学者作为...

    java程序员-从笨鸟到菜鸟.pdf

    java程序员-从笨鸟到菜鸟.pdf

    eclipse-2020-06最后默认支持java8的版本,里面包含两个常用插件

    然而,长期而言,跟上Java的最新版本是明智之举,因为新版本通常会带来性能优化和新的开发工具。 总之,Eclipse 2020-06是Java 8开发者的一个可靠选择,特别是对于那些尚未准备好迁移至Java 11的项目。同时,丰富的...

Global site tag (gtag.js) - Google Analytics