Jade Dungeon

eclipse

配置优化

1. 改eclipse.ini, 给至少2G堆内存,开parallel gc, 能用g1就用g1。 2. 如果平时的工作风格是开个eclipse不卡死就不重启,在eclipse.ini里指定++server参数 3. 打开eclipse后,第一件事就是去偏好设置里禁用所有validation(校验项),反选所有folding(代码折叠)的选项。 4. 打开自带的内存监视器,无聊时就点一点状态栏上的监视器,会触发强制full gc. 可以一定程度上避免你弹指如飞行云流水时突然来个full gc. 5. 强迫症的话(如我),在project菜单上关掉auto build. 自己设快捷键控制什么时候build.6 当一个单词已经在当前文件中出现过(比如说引用刚刚定义过的变量),使用word complete代替代码补全(默认好像是alt-/或alt-小数点),大项目里代码补充是会卡顿的。 7. (可选但推荐) 学习vim键位装vrapper. 可以配置一键开vim, 复杂的文本编辑动作开vim来做,避免在eclipse里安装大量小插件。 8 (可选但推荐) 本机或在工作环境找个服务器部署opengrok(配个jetty或tomcat做服务器即可)。浏览器用chrome, 装supper simple highlighter插件和oursticky插件。阅读一些临时性的参考代码用opengrok来做,尽量避免在eclipse里引入新project或多开eclipse。大项目的话,连全局查找我都是在opengrok里做,定位到文件后再在eclipse里直接打开。9. 在同一个workspace里无关的项目尽量关掉。

启动配置

eclipse.ini

-vm                      -- jvm所在的路径
-vmargs                  -- 设置JVM参数,所以后面的其实都是JVM的参数了
-server                  -- 平时的工作风格是开个eclipse不卡死就不重启,指定++server参数
-Xms4G
-Xmx4G                   -- 堆内存初始化和最大值设为一样,消除堆大小根据当前堆使用情况而变化带来的影响
-Xmn512m                 -- young设一个初始值,据说设置heap的1/4比较好
-XX:PermSize=512m
-XX:MaxPermSize=512m     -- 非堆内存也固定大小
-XX:+DisableExplicitGC   -- 已经给分配足够空间了防止eclipse自作主张调用System.gc()手动触发了系统GC,
-XX:+UseParallelGC 
-XX:+UseParallelOldGC    -- Parallel收集年老代,从JDK6.0开始支持

代码配色

workspace的目录中,找到: .metadata/.plugins/org.eclipse.core.runtime/.settings/

然后找到两个文件,替换完之后还得手动设置一次字体:

  • org.eclipse.jdt.ui.prefs
  • org.eclipse.ui.editors.prefs

显示

模式与语法高亮的位置:

{Eclipse workspace directory}/.metadata/.plugins/org.eclipse.core.runtime/.settings/*.prefs

  • java : ``
  • org.eclipse.jdt.ui.prefs Java Syntax Color Settings
  • org.eclipse.ui.editors.prefs Text Editor Settings
  • org.eclipse.cdt.ui.prefs Formatter Settings
  • org.scala-ide.sdt.core.prefs Scala Syntax Color Settings
  • org.eclipse.wst.jsdt.ui.prefs JavaScript Syntax Color Settings
  • org.eclipse.jst.jsp.ui.prefs
  • org.eclipse.wst.css.ui.prefs
  • org.eclipse.wst.html.ui.prefs
  • org.eclipse.wst.json.ui.prefs
  • org.eclipse.wst.dtd.ui.prefs
  • org.eclipse.wst.xml.ui.prefs
  • org.eclipse.wst.xsl.ui.prefs

在Formatter配置菜单里也可以输出一部分。

JRE参数

Preferences->Java->Installed JREs->"edit"

 -Xms512m -Xmx1024m -XX:PermSize=128m -XX:MaxPermSize=256m 

如果你有一个双核的CPU,也许可以尝试这个参数:

-XX:+UseParallelGC

ant

run -> External Tools -> External Tools Configurations...

jre:

-Xms768m -Xmx1024m -XX:MaxPermSize=512m

指定ant home:

windows -> preferences -> Ant Home...

指定默认ant文件

Window -> Show View -> Ant

在打开的ant视图中点加号蚂蚁按钮指定构建文件。

maven

mvn eclipse:eclipse -Dwtpversion=2.0

Debug

指定远程应用

run -> Debug confilgurations... -> 新建揿钮 -> Remote Java Application

指定关系远程应用与本地工程源代码关联:

Source标签页 -> add -> Java Project

在Eclipse中使用Maven jetty的debug模式

1.右键项目debug as添加mvn命令: jetty:run

2.进入eclipse的菜单Run->Debug configurations,会看到maven build下对应的项目的mvn命令的项,选中Environment选项卡 -->New, name输入MAVEN_OPTS

value中加入

-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=4000,server=y,suspend=y

3.项目右键Debug as-->Maven build(刚才设置的mvn命令)

maven下 jetty:run很爽,但是偶尔想通过eclipse调式一下可以吗?

回答是肯定的

Goals还是设置为jetty:run

Environment添加variable name:MAVEN_OPTS variable:

-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n

然后eclipse debug,跟以前一样调试有木有

把java项目转为Web项目

.project文件中加上:

<nature>org.eclipse.wst.common.project.facet.core.nature</nature>
<nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
<nature>org.eclipse.jem.workbench.JavaEMFNature</nature> 

项目菜单的"「project properties",左边树中点中"Project Facets"勾上"Java"和 「Dynamic Web Module」。

指定WEB项目的根目录位置

可以在项目属性的「Deployment Assembly」中设置。

也可以直接改配置文件的方法:

打开文件:

<项目目录>/.settings/org.eclipse.wst.common.component

找到

    <wb-resource deploy-path="/" source-path="/WebContent"/> 

并修改,如

    <wb-resource deploy-path="/" source-path="/webapp"/> 

当然,对于大项目,最方便的还是安装tomcat插件,然后配置tomcat的server.xml如下

<Host name= "localhost"   appBase= "webapps"
  unpackWARs="true"  autoDeploy= "true"
  xmlValidation="false"  xmlNamespaceAware= "false" > 
    <Context path=""  docBase= "E:\workspaces\doone\mondrian\webapp"  
      debug= "0"  reloadable= "true" /> 
</Host> 

WTP 自带的结构

<Context  docBase="mondrian "   path="/mondrian "
  reloadable="true"  source="org.eclipse.jst.j2ee.server:mondrian "/> 

项目漏包的问题

可以在项目属性的「Deployment Assembly」中设置。在对面页面上「ADD」加上包。

关闭对javascript的验证

Windows->preferences,JavaScript->Editor->Content Assist,ent Assist, 去掉Enable auto Active。

file ".project", delete :

<buildCommand>
     <name>org.eclipse.wst.jsdt.core.javascriptValidator</name>
      <arguments></arguments>
</buildCommand>
 
<nature>org.eclipse.wst.jsdt.core.jsNature</nature> 

构建变量

调用外部工具的变量列表:链接

编译系统变量

查看

C/C++ Build > Build Variables 选项卡 > Show system variables 选框

添加变量到当前项目

Add 按钮

添加变量到整个工作空间

Window > Preferences

操作系统级环境变量

许多对话框有Variables…按钮,在那里可以使用自定义变量,包括定义在系统级别的变量。