Eclipse를보다 빠르게 경험할 수있는 방법은 무엇입니까?
예를 들어 : 필요하지 않은 모든 플러그인 (Mylyn, Subclipse,…)을 비활성화합니다.
Mercurial 용 플러그인을 사용하는 대신 TortoiseHG 를 외부 도구로 구성합니다 .
Eclipse를보다 빠르게 경험할 수있는 방법은 무엇입니까?
예를 들어 : 필요하지 않은 모든 플러그인 (Mylyn, Subclipse,…)을 비활성화합니다.
Mercurial 용 플러그인을 사용하는 대신 TortoiseHG 를 외부 도구로 구성합니다 .
답변:
Eclipse 속도에 가장 영향을 미치는 세 가지 요소는 다음과 같습니다.
Indigo (3.7.2) SR2의 "동일한"작업 영역은 4 초 내에, Kepler SR2 (4.3.2)에는 7 초, Luna (4.4.0)에는 10 초 내에 4 초 안에로드됩니다. 모두 Java EE 번들입니다. 최신 버전에는 더 많은 번들 플러그인이 있지만 여전히 추세가 분명합니다. ( "동일한"작업 공간이란 의미 : 사용 된 동일한 (추가로 설치된) 플러그인, 동일한 프로젝트가 버전 관리에서 체크 아웃 됨)
최신 JDK를 사용하여 시작 (작성 당시 Java 14, Eclipse 프로젝트에서 원하는 다른 JDK로 컴파일하는 것을 막지 않습니다 : 1.4.2, 1.5, 1.6 이전 ...)
-vm jdk1.6.0_10\jre\bin\client\jvm.dll
eclipse.ini 구성 ( 완전 eclipse.ini는이 질문 참조 )
-Xms512m
-Xmx4096m
[...]
Xmx
인수는 (단순 측면에서) 이클립스 얻을 것이다 메모리의 양입니다. 를 사용하면 -Xmx4096m
4GB의 RAM 등을 얻습니다.
노트 :
jvm.dll을 참조하면 다음과 같은 장점이 있습니다.
libjava.so
:에 리눅스, libjava.so
의존 libjvm.so
하지만, 그 반대는 사실이 아니다 : $ readelf -d libjava.so
Dynamic segment at offset 0x208a8 contains 25 entries:
Tag Type Name/Value 0x00000001 (NEEDED) Shared library: [libjvm.so] [...]
: 라이브러리는 그러한 정보가 포함 된 경우, ld.so
로드 libjvm.so
할 때 자동으로 프로세스로드 libjava.so
.
추가 -Xverify:none
사용자에 eclipse.ini 파일.
Eclipse 시작 시간이 상당히 줄어 듭니다 (필자의 경우 50 %). 그러면 VM이로드하는 모든 .class 파일의 유효성을 검사하지 않도록 지시합니다.
이것을 고려하십시오 : 주석에서 언급 한 것처럼 프로덕션 시스템에서 바이트 코드 확인을 비활성화하지 마십시오
Sun JVM을 사용하여 Eclipse를 실행 중인지 확인하십시오.
Linux, 특히 Ubuntu에서 Eclipse는 기본적으로 오픈 소스 GCJ를 사용하도록 설치되어 성능이 크게 저하됩니다. update-alternatives --config java
Eclipse에서 UI snappiness를 크게 향상시키기 위해 Sun JVM으로 전환하는 데 사용 합니다.
java -version
와 같은 말을해야합니다 openjdk version "1.8.0_131"
). OpenJDK 9가 많은 작업에서 성능 저하 (대기 시간 단축)를 유발한다는 것을 알았습니다.
힌트 주셔서 감사합니다. 이 옵션들 (위에서 언급)은 많은 도움이되었습니다.
윈도우 :
메모리 증가 및 eclipse.ini에서 업데이트 된 Java 버전과 관련하여 :
-Dosgi.requiredJavaVersion=1.6
-Xms512m
-Xmx512m
-XX:PermSize=512m
-XX:MaxPermSize=512M
-Xverify:none
또한 속도를 최적화하고 있으므로 JVM이 사용 가능한 최대 메모리 양으로 시작 -Xms
하도록하는 것과 동일한 값으로 설정 하십시오 -Xmx
.
리눅스 / 우분투 :
사용
update-alternatives --config java
-XmX
)는 시스템 메모리에 따라 다릅니다. 질문을 할 때 512m은 이전 WinXP 넷북에 최적화 된 값이었습니다. 자세히 알아보기 : stackoverflow.com/questions/4304312/…
레이블 데코레이션 Windows -> Preferences; General -> Appearance -> Label Decorations
을 비활성화하고 ( Windows -> Preferences; General -> Startup and Shutdown
) 시작시 사용하지 않는 기능을 비활성화 하면 다른 성능 향상을 얻을 수 있습니다 .
JVM에 따라 다른 가비지 콜렉션 전략을 선택하여 추가 성능을 얻을 수도 있습니다.
재시작주기가 부족 하면 ZeroTurnaround의 JavaRebel 을 사용할 수 있습니다 . 서버 / 클라이언트 재시작에 소요되는 시간이 단축됩니다.
Eclipse와 직접 관련이없는 경우 :
Windows 7 (및 아마도 Windows Vista)을 실행중인 경우, 물건이 기본 위치 인 홈 폴더 인 경우 작업 공간 폴더의 파일 색인 생성을 비활성화하십시오. Windows는 기본적으로 홈 폴더의 모든 항목을 색인화하며 일반적으로 작업 공간을 낭비합니다. (탐색기에서 작업 공간 폴더를 마우스 오른쪽 단추로 클릭하고 특성 -> 고급 )
Eclipse는 플러그인을 느리게로드하며, Subclipse 와 같은 가장 일반적인 플러그인 은 사용하지 않으면 아무 것도하지 않습니다. 런타임 동안 Eclipse 속도가 전혀 느려지지 않으며 비활성화하는 데 도움이되지 않습니다. 실제로 Mylyn 은 올바르게 사용될 때 Eclipse의 메모리 공간을 줄이는 것으로 나타났습니다.
성능 저하없이 수많은 플러그인으로 Eclipse를 실행합니다.
-Xmx 스위치로 늘려야 할 메모리 일뿐만 아니라 perm gen 크기 이기도합니다 . Eclipse 3.4에서 문제가 해결되었다고 생각합니다.
Windows와 특히 Linux 모두에서 Eclipse 속도를 높이는 또 다른 방법이 있습니다-JVM을 RAM 디스크에 넣습니다.
Windows의 경우 Qsoft 의 상용 RAM 디스크 드라이버를 사용할 수 있습니다 .
Linux의 경우 인터넷의 여러 기사에 설명 된 방법 중 하나를 사용하십시오. JVM 크기보다 10 % 큰 RAM 디스크에 추가 공간을 제공하는 것이 중요합니다.
확인 해봐. 실제로 차이를 만듭니다.
grep -r
또는 아마도 사용할 vmtouch
수 없습니까?
나는 많은 메모리를 제공하고 ( -Xmx
시작하는 명령에 스위치를 추가하고 ) 종료하고 다시 시작하지 않도록 노력합니다-최악의 지연은 시작시 발견되므로 많은 RAM을 제공하면 충돌하기 전에 더 오래 갈 수 있습니다 밖.
최신 소프트웨어 (최신 Eclipse 및 Java) 및 더 많은 RAM과 함께
나는 또한 vmargs와 물건을 조정했다. 그러나 Windows에서 Eclipse를 실제로 가속화 한 것은 안티 바이러스 소프트웨어의 "적절한"구성입니다. 압축 파일의 주문형 검색을 비활성화해야합니다. jar 파일 및 java와 관련된 많은 파일은 PKZIP 알고리즘으로 압축되어 공간을 절약합니다. Eclipse는 수많은 Java 파일을 사용하기 때문에 안티 바이러스는 개별적으로 압축을 풀고 모든 파일을 스캔하려고 시도합니다. 따라서 Windows 플랫폼의 경우 : 팩형 파일의 주문형 스캔을 끄십시오. 그렇지 않으면 Eclipse가 사용 불가능하게 느려집니다. 안타깝게도이 기능을 비활성화하면 공격에 대비하여 시스템이 약해지며 대부분의 맬웨어는 패커를 사용합니다.
성능을 향상시키고 다른 플러그인 간의 충돌을 줄이기 위해 런타임에로드 할 기능을 구성하는 플러그인을 구현했습니다.
Android 개발 도구, C / C ++ 개발 도구, PHP , SVN , Git 및 ClearCase 플러그인 과 같은 많은 기능을 Eclipse에 설치했을 수 있습니다 . 따라서 이클립스는 무겁고 많은 메모리를 소비하며 일부는 자주 사용되지 않습니다.
따라서 내 도구를 사용하여 Android, Git 및 기본 Eclipse가있는 정책, C / C ++, SVN 및 기본 Eclipse가 포함 된 다른 런타임 정책을 만들 수 있습니다. 다음에 Eclipse는 Android 및 Git 만있는 정책을 사용하는 경우 지정된 기능 만로드합니다.
당신은 그것을 시도하고 나에게 피드백을 제공 할 수 있습니다. :)
해당 도구의 이름은 Equinox Advanced Configurator 입니다.
과소 평가해서는 안된다. 16-32GB의 RAM, SSD 및 괜찮은 프로세서.
이 스레드의 모범 사례는 ZeroTurnaround 의 무료 Optimizer For Eclipse 에서 구현 됩니다.
어떤 도움이 되나요?
자세한 내용은 RebelLabs 에서이 기사를 확인하십시오 .
빌드 경로를 구성하기 위해 노력하십시오. 코드 완성은 전체 프로젝트 폴더를 거쳐야 할 경우 많은 메모리를 사용합니다.
열린 탭 수를 제한 할 때 성능이 크게 향상되었습니다 (과거에는 자주 30 개 이상의 탭이 열려 있음). Eclipse가 자동으로이를 처리하도록 할 수 있습니다.
창 -> 환경 설정 -> 편집기 -> 자동으로 편집기 닫기
8 개의 열린 탭은 >> 표시가 나타나기 전의 금액이므로 8로 두는 경향이 있습니다.
더 많은 탭을 열면 가장 최근에 액세스 한 탭이 닫힙니다.
-> 모든 편집자가 더럽거나 고정 된 경우
저장되지 않은 수정 사항이 있으면 저장 및 재사용하라는 메시지가 표시 될 수 있습니다 (탭이 닫히고 대신 새 탭이 열립니다). 또는 새 편집기 끝을 열어서 열린 탭의 양을 늘리십시오 (눈에 띄지 않는 선택).
일부 탭이 자동으로 닫히지 않게하려면 고정 할 수 있습니다. 핀 아이콘 (툴팁 텍스트로 "핀 편집기"가있는 도구 모음에서 가장 오른쪽에있는 아이콘)을 클릭하면됩니다.
**Tips for making Eclipse IDE Faster**
소규모 프로젝트로 작업 할 때 Eclipse가 더 빠르게 실행됩니다. 그러나 큰 프로젝트로 작업해야 할 때는 속도에 짜증이 날 것입니다. 거대한 RAM을 사용하더라도 속도에 만족하지 않을 것입니다. 아래 단계는 속도를 높이는 데 도움이됩니다.
windows –> 환경 설정 –> 일반 –> 시작 및 종료 로 이동하여 시작시 일부 플러그인의 원치 않는 활성화를 제거 하십시오.
당신에게 덜 사용되는 라벨 장식을 비활성화하면 성능을 얻는 데 도움이됩니다. 로 이동 > 장식 - 윈도우 -> 기본 설정 -> 일반 -> Appearance-> 라벨
원치 않는 프로젝트를 닫고 작업 세트 옵션 을 사용 하여 한 프로젝트 그룹에서 다른 프로젝트 그룹으로 부드럽게 이동하십시오.
이클립스 설치 위치에서 사용할 수있는 eclipse.ini를 구성하십시오.
Configuring eclipse.ini should be based on your RAM
-Xms256m
-Xmx512m
-XX:PermSize=512m
-XX:MaxPermSize=512M
또한 eclipse.ini를 구성하는 추가 옵션에 대해서는 http://wiki.eclipse.org/Eclipse.ini 를 참조하십시오.
편집기에서 많은 탭을 열어 두지 마십시오. 약 20 개의 탭이있는 것이 좋습니다. 사용하지 않는 탭을 정기적으로 닫으십시오. 리소스를 열려면 많은 탭을 여는 대신 항상 ctrl + shift + R 및 ctrl + shift + T (자바 리소스)를 사용할 수 있습니다. 열린 탭 수를 제한 할 때 성능이 크게 향상되었습니다. + 탭 열림). 이클립스가 자동으로 이것을 처리하도록 할 수 있습니다. Window-> Preferences-> Editors-> close편집기 자동으로 8 개의 열린 탭은 >> 표시가 나타나기 전의 양이므로 14를 기본값으로 설정했습니다. 더 많은 탭을 열면 가장 최근에 액세스 한 탭이 닫힙니다. 모든 편집자가 더럽거나 고정 된 경우 저장되지 않은 수정 사항이 있으면 저장 및 재사용하라는 메시지가 표시 될 수 있습니다 (탭이 닫히고 대신 새 탭이 열립니다). 또는 새 편집기 끝을 열어서 열린 탭의 양을 늘릴 수 있습니다 (눈에 띄지 않는 선택). 일부 탭이 자동으로 닫히지 않게하려면 고정 할 수 있습니다. 핀 아이콘 (툴팁 텍스트로 "핀 편집기"가있는 도구 모음에서 가장 오른쪽에있는 아이콘)을 클릭하면됩니다.
Windows-> 환경 설정-> 유효성 검증으로 이동하여 원하지 않거나 필요하지 않은 유효성 검증기 를 선택 취소하십시오 .
Windows-> 환경 설정-> 일반-> 모양->으로 이동하여 원하지 않거나 필요하지 않은 애니메이션 을 선택 취소하십시오 .
Windows-> 환경 설정-> Maven으로 이동하여 '자동으로 종속성 업데이트 안 함'을 선택하십시오 .
특수한 경우 h2 또는 nwire 데이터베이스가 손상되어 성능이 저하 될 수 있습니다. 자세한 정보는 Eclipse PDT 및 nWire 속도 향상을위한 5 가지 팁을 읽으십시오 .
내가 일하는 곳에서는 데비안 을 실행하기 위해 VM에 의존합니다 . purpouses를 테스트하기 위해 VM에 다른 Eclipse 버전을 설치했지만 다른 Eclipse 버전을 실행하는 경우 때때로 충돌이 발생합니다. Eclipse 버전 모두가 공유하는 공유 폴더가 있습니다. 실수로 데비안 이클립스 설치를 백그라운드에서 한 번만 실행하면 데이터베이스 파일이 손상되었습니다.
표준 플러그인으로 Eclipse를 가속화하는 유일한 방법은 메모리를 늘리고 경우에 따라 더 빠른 저장 공간 / 조각 모음 하드 드라이브에 액세스하는 것입니다.
성능 측면에서 많은 것을 할 수있는 것 외에도 대부분의 표준 플러그인에는 지속적인 런타임 비용이 없습니다. Mylyn 도 비교적 빠릅니다.
머신에서 지원되는 최신 JVM으로 업그레이드해도 도움이 될 수 있습니다.
일부 사람들은 더 나은 성능을 얻기 위해 이전 Eclipse 버전으로 다운 그레이드합니다. 공식 릴리스 대신 Eclipse classic을 사용하는 것이 좋습니다.
이것들을보십시오. 두 가지 방법이 있습니다.
첫 번째 절차
이 기사를 참조하십시오.
http://www.javacodegeeks.com/2014/06/the-real-way-to-make-eclipse-run-faster-on-ubuntu.html
두 번째 절차.
터미널에서 명령을 실행하십시오.
ramdisk
우분투에 대한 더 나은 성능과 빠른 응답을 얻으려면.
램 디스크는 시스템 메모리의 일부입니다. 우분투는 기본적으로 절반의 물리적 메모리 (RAM)를 램 디스크로 사용하며
/ dev / shm
일반 디스크 공간처럼 사용할 수 있습니다 (파일과 폴더를 만들어 하드 디스크에 저장 한 경우보다 더 나은 성능으로 조작). 램 디스크가 RAM의 절반 이상을 사용하면 데이터가 스왑 공간으로 이동합니다. 램 디스크가 적은 양을 사용하더라도 나머지는 여전히 램이하는 일을 할 수 있습니다.
램 디스크의 상한 설정
위에서 말했듯이 램 디스크는 기본적으로 RAM의 절반을 사용할 수 있습니다. 상한을 변경하려면 아래 단계를 따르십시오.
좋아하는 편집기로 / etc / fstab을 편집하십시오.
gksudo gedit / etc / fstab
이 줄을 찾아서 다음과 같이 변경하십시오 (존재하지 않으면이 줄을 추가하고 원하는대로 512M을 변경하십시오).
tmpfs / dev / shm tmpfs 기본값, size = 512M 0 0
재부팅 또는 다시 마운트
/ dev / shm
램 디스크에 / tmp 마운트
사용하기 쉽도록 디렉토리를 마운트 할 수 있습니다
/dev/shm
다음 명령으로
mkdir / dev / shm / tmp
chmod 1777 / dev / shm / tmp
마운트 --bind / dev / shm / tmp / tmp