====== Eclipse Config 설정 및 성능 최적화 ====== ===== ''eclipse.ini'' ===== * http://stackoverflow.com/questions/142357/what-are-the-best-jvm-settings-for-eclipse * # 비 윈도우 계열에서는 -XX:MaxPermSize=384m --launcher.XXMaxPermSize 384m -showlocation -vmargs -Dosgi.requiredJavaVersion=1.6 -Xms256m -Xmx768m -Xss4m -Xverify:none -XX:ReservedCodeCacheSize=128m -XX:CompileThreshold=20000 -XX:MaxGCPauseMillis=10 -XX:MaxHeapFreeRatio=70 -XX:+CMSIncrementalPacing -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:+UseFastAccessorMethods * 위 GC 설정을 하면 멀티코어 CPU에서 GC 할 때 실제로 멀티코어를 사용한다. * **-Dosgi.requiredJavaVersion=1.6** : 자기가 사용하는 JDK 버전으로 지정해야 가장 좋은 성능을 낸다. * **''-XX:CompileThreshold=20000''** 값이 작으면 성능이 매우 저하 됐었다. 스스로 값을 조정해 보면서 최적값을 찾을 것. * ''-showlocation'' : Workspace의 경로를 윈도우 타이틀바에 출력 * ''-XX:ReservedCodeCacheSize=64m'' : "out of space in CodeCache" 오류가 발생할 때 이 값을 증가시킨다. 이 값은 PermGenSpace의 공간에 할당되므로 PermGenSpace도 커야한다고 한다. [[http://stackoverflow.com/questions/6015873/eclipse-dies-every-few-minutes-with-latest-jdk-saying-out-of-space-in-codecache|java - eclipse dies every few minutes with latest jdk saying 'out of space in CodeCache for adapters' - Stack Overflow]] * ''-XVerify:none'' : [[http://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/index.jsp?topic=%2Fcom.ibm.websphere.express.doc%2Finfo%2Fexp%2Fae%2Furun_rconfproc_jvm.html|클래스에 대한 검증을 건너 뜀으로써 성능이 10~15% 향상된다]] ===== 기본 Preferences 최적화 ===== * 4.2(Juno)일 경우 **Preferences -> General -> Appearance** * ''Theme''을 **Classic**으로 변경해야 빨라진다. * ''Enabled animations''를 끈다. * **Preferences -> General : Show Heap status** : 메모리 사용상태와 GC 강제 실행 버튼를 보여줌. * **Preferences -> General -> Editors -> Text Editors : Show line numbers** * **Preferences -> General -> Appearance -> Colors and Fonts : Basic Text Font**를 [[http://dev.naver.com/projects/nanumfont|나눔고딕코딩]] 혹은 그 외 [[http://www.viper.pe.kr/cgi-bin/moin.cgi/%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D%EC%9A%A9_%ED%8F%B0%ED%8A%B8|코딩용 글꼴]]로 변경한다. 코딩용 글꼴은 고정폭이고 숫자 1,대문자 아이(I), 소문자엘(l), 숫자 0과 알파벳 오(O)를 구분 할 수 있어야 한다. * **Preferences -> General → Editors → Text Editors**에서 배경색 눈 안아픈 회색 톤으로 조정 * **Preferences -> General -> Workspace**에서 Text file encoding과 New text file delimiter의 기본 값을 정해준다. * Maven과 연동해서 사용할 경우, Maven 빌드에서 생성한 target 디렉토리의 JSP/HTML 등을 Eclipse가 Validation하느라 상당한 시간을 소모하기도 한다. 이 때는 **Preferences -> Validation -> 각 항목**에서 Exclude Gruop을 만들고 ''target/'' 디렉토리를 Rule로 추가한다. * **Preferences -> Team -> Ignored Resources**에 ''target''과 ''bin'' 등의 빌드 디렉토리 추가. * Windows 환경 성능 최적화 * 프로젝트 폴더의 **속성 -> 일반 -> 고급 : 이 폴더의 파일 속성 및 내용 색인 허용** 체크 해제 * 백신 프로그램의 실시간 감시에서 프로젝트 폴더를 예외로 설정한다.(파일 락을 거는 현상도 줄어들겠지?) * 기타 최적화 * spell check 해제 : **Preferences -> General -> Editors -> Text Editors -> Spelling**에서 체크 해제. * Validation에서 build 쪽은 꼭 필요한 것만 남기고 모두 해제 * **General -> Appearance -> Label Decorations**에서 SVN/CVS 및 기타 등등의 데코레이션 제거. * DIFF에서 공백 무시 * **Preferences -> General -> Compare/Patch**에서 **Ignore white space** 체크 * 저장시 액션 지정 : [[http://blog.naver.com/sungback/90139189173|[이클립스 팁] 이클립스 파일 저장시 공백 없애기]] 참조 * **Preferences -> Java -> Editor -> Save Actions** 에서 저장시 액션들을 지정한다. * **Remove Trailing whitespace** 선택 * **Remove unused imports** 선택, ... ===== 단축키 추가 ===== * Copy Fully Qualified Name : ''Ctrl+Alt+Q'' * Toggle Folding : ''Ctrl+Shift+='' when Editing Text - 87 키보드에는 숫자 키패드가 없어서 기본 단축키 사용 불가. * Open Implementation : ''Ctrl-Shift-F3'' ===== Workspace 설정 정보 공유 ===== * **File -> Export**에서 **Preferences**를 Export하여 파일로 저장하면 현재 워크스페이스의 설정정보가 저장된다. * 이 파일을 다른 워크스페이스에서 Import 하면된다. ===== 기타 설정 ===== * [[http://www.jroller.com/lmchung/entry/eclipse_performance_improvement|Eclipse Performance improvement]] 이거 읽고 좀 더 정리 * [[http://slipp.net/wiki/pages/viewpage.action?pageId=5177633|Eclipse Juno 최적화]] * [[eclipse:zencoding|Zen Coding Eclipse Plugin]] * [[eclipse:subclipse|Subclipse]] * [[java:junit:staticimports|JUnit Test시에 Static Import할 기본 항목들]] * [[http://www.eclipsecolorthemes.org/|Eclipse Color Theme]]에서 에디터 색을 가독성 높은 것으로 바꾼다. 일단 모르면 Zenburn, 혹은 [[http://www.eclipsecolorthemes.org/?view=theme&id=540|GreyAgain]] * Windows 개인 설정에서 색깔 변경을 한다. Eclipse Color Theme와 유사한 색깔로 한다. 나는 파스텔톤 색 선호. * [[http://java.dzone.com/articles/xfce-keyboard-shortcuts|Xfce: Keyboard Shortcuts Working in Eclipse IDE]] * [[http://java.dzone.com/articles/eclipse-tip-help-tidy-package|Package 이름 줄이기]] : ''Window -> Preferences -> Java -> Appearance''에서 **Abbreviate package names**에 ''com.some.package=[csp]'' 형태로 기술. ===== WTP + Tomcat ===== * WTP에서 Tomcat을 실행할 때 항상 메모리 용량을 지정해주는 것이 좋다. 요즘 특히 Spring Framework를 사용하면서 PermGen 부족을 많이 겪게 된다. * ''Run -> Run Configurations -> 실행기 선택 -> Arguments'' -Xmx512m -XX:PermSize=64m -XX:MaxPermSize=256m * 아니면 위 옵션을 Tomcat 실행 JRE의 ''Default VM arguments''로 지정해둔다. **Preferences -> Java -> Installed JREs -> 원하는 JRE Edit**