快捷键
配置与使用
以Tomcat为例配置服务器
对于其他服务器软件,配置方式类似。对新类型服务器,配置时灵活思考集成方式。
修改默认编码为UTF-8
windows->Preferences-->general->Workspace-->Textfile encoding
修改JDK版本
window/preferences—>java/Installed JREs,选中Jre,再点击右边的Edit,打开文件流览器,选择要加载的JDK包。
调整快捷键设置
打开相关资源文件所在的文件夹
配置
1. Run-->ExternalTools-->External Tools Dialog
2. New:program
3. name:OpenDir
4. location:C:\WINDOWS\explorer.exe(windows),/usr/bin/nautilus(Ubuntu)
5. Arguments里面填: ${container_loc}
使用方式
修改文档注释模板与删除默认注释模板
部分模板
Types:类接口文档注释
/**<br/>
* @author ${user}
* @Creating_Time ${date} ${time}
*/
Methods:方法文档注释
/**<br/>
* ${tags}
* @author ${user}
* @return ${return_type}
* @Creating_Time ${date} ${time}
*/
说明:
l ${tags},生成方法注释时其他一些信息,由Eclipse提供;
l @return ${return_type},方法返回;
l <br/>,生成文档时,换行显示。
另外,需要删除原有其它不想要模板,也是在这里将默认内容删除即可。
Java文件中使用
Java编码顶端导航与代码显示标记配置
编辑顶端导航配置
代码显示标记
格式化代码块设置
说明:搜索出的选项,同时也可以进行其他配置,例如,代码每一行字符数,缩进占用数等等。
Eclipse中运行Java程序内存修改
选中RunConfiguration--->Java Application--->Arguments
Program arguments:VMarguments:-Xmx[需要的内存大小]m
正则替换
运用好Eclipse正则替换功能,能够极高地提高效率。
Tips:部分正则说明:
1. 替换java注释: /\*{1,2}[\s\S]*?\*/
2. 替换xml注释: <!-[\s\S]*?-->
3. 替换空白行: ^\s*\n
4. 替换java单行注释 //[\s\S]*?$
搜索整个工程
1、找到search菜单下的search (ctrl + H);
2、打开对话框后在最上面的菜单找到file search.
containing text:输入内容;
file name patterns:如果是搜索java文件,写*.java,如何是配置文件(如xml),写*.xml,或者2个一起写*.java,*.xml;
working set:最下面的scope选择working set,再选择右边的choose后,新窗口中选择selected workingset--->new-->java;
选择你需要搜索的工程,填写自定义的别名,它将显示在working set中,点击finish后,选择刚刚添加的别名。ok,可以点击search开始搜索。
生成Javadoc文档
Javadoc是Java Document的缩写,指标准的Java帮助文档。在命令行模式下,使用Javadoc命令可以为当前文件创建帮助文档。帮助文档是由Java中的具有一定格式的注释生成的。
Eclipse也封装了Javadoc的生成过程,生成帮助文档的步骤为:
第一步,选择导出。在工程上点击右键,从弹出菜单中选择导出(Export);
第二步,选择导出数据类型。在对话框中选择Java→Javadoc,为当前工程导出帮助文档,点击Next进行导出配置;
第三步,配置,完成导出。如果是第一次执行javadoc导出操作,则需要对javadoc程序进行配置,即指定javadoc程序的路径。该程序位于JDK安装路径中的bin文件夹下。配置完成后点击Finish按钮,开始导出。
生成Java 压缩包
Java压缩包(Java Archive File,JAR)的实质是一个“.zip”压缩文件,是一种包含了应用于Java程序的特殊文件的归档文件类型。在可执行的“.jar”包中,其中包含的特殊文件指明了main方法所在的类,Java虚拟机通过搜索main方法执行程序。不包含main方法的“.jar”包就是一个类库。按照以下步骤可以导出一个“.jar”包。
步骤一:右键点击工程,选择“导出(Export)”;
步骤二:选择导出类型。在列表中选择Java→JAR File,导出“.jar”归档类型文件;
步骤三:配置导出属性。配置窗口中可以选择需要导出的内容、导出路径等。配置完成后,如果点击“Finish”,直接导出一个归档文件;如果点击“Next”,可以在Java Packaging Options中选择是否在导出过程中对编译错误和警告进行提示(根据需要选择);继续点击“Next”,可在Jar Manifest Specification中选择Generate the manifest,在下面的Main class中指出程序的入口位置,既main方法的所在类(如果有的话)。完成导出,如果设置了main方法所在类,则在任何支持Java的平台下该“.jar”文件都可以被直接双击运行。
Tips:导出web工程发布包也类似。
优化提速
Java JVM堆(Heap)和非堆(Non-heap)内存
堆(Heap)和非堆(Non-heap)内存按照官方的说法:“Java 虚拟机具有一个堆,堆是运行时数据区域,所有类实例和数组的内存均从此处分配。堆是在 Java 虚拟机启动时创建的。”“在JVM中堆之外的内存称为非堆内存(Non-heap memory)”。
JVM主要管理两种类型的内存:堆和非堆。堆就是Java代码可及的内存,是留给开发人员使用的;非堆就是JVM留给自己用的,所以方法区、JVM内部处理或优化所需的内存(如JIT编译后的代码缓存)、每个类结构(如运行时常数池、字段和方法数据)以及方法和构造方法的代码都在非堆内存中。
堆内存分配 JVM初始分配的内存由-Xms指定,默认是物理内存的1/64;JVM最大分配的内存由-Xmx指定,默认是物理内存的1/4。默认空余堆内存小于40%时,JVM就会增大堆直到-Xmx的最大限制;空余堆内存大于70%时,JVM会减少堆直到-Xms的最小限制。
因此服务器一般设置-Xms、-Xmx相等以避免在每次GC后调整堆的大小。
非堆内存分配 JVM使用-XX:PermSize设置非堆内存初始值,默认是物理内存的1/64;由XX:MaxPermSize设置最大非堆内存的大小,默认是物理内存的1/4。
PermSize和MaxPermSize
PermSize和MaxPermSize指明虚拟机为Java永久生成对象(Permanate generation)如,class对象、方法对象这些可反射(reflective)对象分配内存限制,这些内存不包括在Heap(堆内存)区之中。
MaxPermSize过小会导致:java.lang.OutOfMemoryError: PermGen space
Tips:如果-Xmx不指定或者指定偏小,应用可能会导致java.lang.OutOfMemory错误,此错误来自JVM不是Throwable的,无法用try...catch捕捉。慎用最小限制选项Xms,PermSize已节约系统资源。
设置VM参数导致程序无法启动几种原因
1) 参数中-Xms的值大于-Xmx,或者-XX:PermSize的值大于-XX:MaxPermSize;
2) -Xmx的值和-XX:MaxPermSize的总和超过了JVM内存的最大限制,比如当前操作系统最大内存限制,或者实际的物理内存等等。
调整eclipse.ini配置文件内存参数
Tips:具体设置值,请根据电脑系统与需要开发项目进行配置。参数中-vmargs的意思是设置JVM参数,所以后面的其实都是JVM的参数。
关闭不常用和不必要的验证。例如JSP语法验证,Java script验证。这个对于eclipse的优化应该会有比较明显的效果。
去掉自动编译工程。对于使用maven、ant的开发而言,这个不需要。
关闭maven自动更新repository index。
关闭不常用的工程项目。eclipse优化的常用方法。
选中工程,右键,Close Project。另外,打开工程也类似,仅是选择Open Project。
去除不必要的启动项。在Preferences->General->startupand shutdown 这个界面中,可以去掉一些不必要的启动项。
关闭eclipse 对于js的自动提示,避免eclipse响应缓慢和崩溃
操作:
1.Windows -->Preference-->JavaScript -->Editor -->Content Assist
2.如下图,将右下方的Auto-Activation 的enable auto activation勾选去掉即可
运行最新版本的JDK和Eclipse
通常,新版本的JDK和Eclipse都会有性能上的优化。请确保你使用的是64位Eclipse并且使用了Oracle的JDK。对于网络开发,需要使用Eclipse for Java EE而不是Eclipse for Java。当然,这里需要根据系统平台(32/64,2/4/6/8/16/32G内存)选择,否则,达不到预期目标,反而拖累使用。
插件集成
安装方法
1、外置连接安装(推荐)
第二种方式就是使用外挂的方法,下面通过svn包的安装来说明:
1)、建立一个存放所有eclipse插件的D:\Java\EclipsePlugins目录;
2)、再建立一个存放插件包D:\Java\EclipsePlugins\svn目录;
3)、然后将下载解压后的svn插件放到2)插件目录中;
4)、在Eclipse根目录中找到D:\Java\eclipse-kepler\dropins目录,新建一个文件svn.link(文件名最好与需要安装插件名一致),文件的内容只有一行,如下: path=D:\\Java\\EclipsePlugins\\svn;
5)重新启动eclipse,安装成功
Tip:其他的插件也可以用这样的方式安装,目录和文件的名字建议保留插件的版本号,这样便于今后对插件进行升级和管理.
2、内置方式安装
即下载插件后解压缩,然后把解压后插件的plugins和features目录里面的内容分别复制到eclipse安装目录的 plugins和feature目录里面,这种方法安装比较简单,但是问题也比较多,因为所有的插件的文件都混合到了plugins和feature目录里面,eclipse会变得比较臃肿,而且如果你不想再使用某个插件,卸载会是一件非常麻烦的事情。
3、通过Eclipse自带插件安装窗口
推荐插件
下文中插件均可以在网上找到对应资源安装。
subversion
svn版本控制插件,不多说
PopertiesEditor
一个在编辑properties文件时,中文会自动转换为unicode编码插件,在编写配置文件注释、国际化配置非常有用,强烈推荐。
常见问题
Could notpublish server configuration
问题:Couldnot publish server configuration for Tomcat v6.0 Server at localhost. MultipleContexts have a path of "/***"
出现这个异常是因为在server.xml里面有两个以上相同的Context定义,只要删除重复的就可以了
The methodof type must override a superclass method
Java Complier 是1.5导致。Compiler 由 jdk1.5 改为 1.6 即可更改jdk库Preference--Java---Compiler---JDK。
SubversionNative Library Not Available加载不到JavaHL
方法:使用svn插件的SVNKit。
1. 在eclipse中选择 “Windows” -> Perferences;
2. 然后通过左上方的筛选,选出svn设置菜单,点解左侧的“SVN”,直接搜索svn设置;
3. 在设置面板有下方,SVN interface 中,Client选择SVNKit,然后保存。
js校验错误
主要是由于JavaScriptValidator校验工程文件所导致,解决方法是:在项目上右键-》properties-》builders-》把JavaScript Validator前的复选框里的勾去掉即可解决此问题。
非正式发布jar包错误
这个事eclipse的设置问题,它默认把这些受访问限制的API设成了ERROR,你只要把Windows-Preferences-Java-Complicer-Errors/Warnings里面的Deprecated and restricted API中的Forbidden references(accessrules)选为Warning就可以编译通过了。
检查不出泛型
XML去除规范警告
dtd验证是xml的规范,要去除警告的话:工具栏:
windows => preferences => eclipse => validation => XML => Indicate when no grammar isspecified:下拉框选择Ignore即可。
解决Struts2配置文件无提示问题
问题:有时在开发第一个Web项目时,在配置文件中打个”<” 后,并没有任何的提示信息( 快捷键Alt+/ 也不提示)
原因:找不到配置文件头中声明的dtd 文件
解决方法:
(1) 联网,联网后,IDE 会自动下载声明的dtd 文件
(2) 自己动手配置dtd 文件,步骤如下:
1 ,找到Struts2 发行包中的 struts-2.1.dtd 文件,放到本地磁盘固定位置;
2 ,打开Eclipse 的
Window->Preferences->Eclipse->Filesand Editors->XML->XML Catalog;
3 ,单击右侧的 Add 按钮,添加一个 Add XML Catalog Entry ,里面的有三个参数分别是:
Location : File System 找到刚刚找到的struts-2.1.dtd 文件;
Key Type :选 URI;
Key :http://struts.apache.org/dtds/struts-2.1.dtd。
Key 的取值根据struts-2.1.dtd 文件中红色字体部分而来。
编码无提示的解决办法和内容辅助技巧
1、菜单window->Preferences->Java->Editor->ContentAssist->Enable auto activation 选项要打上勾;
2、windows-->preference-->workbench-->keys下设置Content Assist 的快捷键;
3、window->Preferences->Java->Editor->ContentAssist->Advanced 上面的选项卡Select the proposalkinds contained in the 'default' content assist list: 中把 Other Java Proposals 选项打上勾就可以了。