Eclipse ile deneyimi nasıl daha hızlı hale getirebilirsiniz?
Örneğin: İhtiyacım olmayan tüm eklentileri devre dışı bırakıyorum (Mylyn, Subclipse,…).
Mercurial için bir eklenti kullanmak yerine TortoiseHG'yi harici bir araç olarak yapılandırıyorum .
Eclipse ile deneyimi nasıl daha hızlı hale getirebilirsiniz?
Örneğin: İhtiyacım olmayan tüm eklentileri devre dışı bırakıyorum (Mylyn, Subclipse,…).
Mercurial için bir eklenti kullanmak yerine TortoiseHG'yi harici bir araç olarak yapılandırıyorum .
Yanıtlar:
Tutulma hızı için en etkili üç faktör şunlardır:
Indigo (3.7.2) SR2'deki "aynı" çalışma alanı 4 saniyede, Kepler SR2'de (4.3.2) 7 saniyede ve Luna'da (4.4.0) 10 saniyede yüklenir. Hepsi Java EE paketleridir. Daha yeni sürümlerde daha fazla eklenti var, ancak yine de trend açık. ("aynı" çalışma alanı ile demek istediğim: aynı (ek olarak yüklenen) eklentiler kullanıldı, aynı projeler sürüm kontrolünden kontrol edildi).
En son JDK ile başlatma (yazma sırasında Java 14, Eclipse projenizde istediğiniz herhangi bir JDK ile derlemenizi engellemez: 1.4.2, 1.5, 1.6 daha eski ...)
-vm jdk1.6.0_10\jre\bin\client\jvm.dll
Eclipse.ini dosyasını yapılandırma ( tam bir eclipse.ini için bu soruya bakın )
-Xms512m
-Xmx4096m
[...]
XmxArgüman (basit terimlerle) Eclipse alacak bellek miktarıdır. İle -Xmx4096m4 GB RAM vb.
Not:
Jvm.dll'ye başvurmanın avantajları vardır:
libjava.so: Açık Linux libjava.sobağlıdır libjvm.so, fakat tersi doğru değildir: $ readelf -d libjava.so Dynamic segment at offset 0x208a8 contains 25 entries: Tag Type Name/Value 0x00000001 (NEEDED) Shared library: [libjvm.so] [...]: kütüphane bu tür bilgileri içeriyorsa, ld.soyükleyecektir libjvm.sootomatik olarak bir süreç yükler libjava.so.
Ekle -Xverify:nonesizin için eclipse.ini dosyası.
Eclipse başlangıç zamanınızı önemli ölçüde azaltacaktır (daha fazla değilse benim durumumda% 50). Bu, VM'ye yüklediği tüm .class dosyalarını doğrulamamasını söyleyecektir.
Şunu düşünün: Bir Üretim Sisteminde Bayt Kodu Doğrulamasını Asla Devre Dışı Bırakma (yorumlarda belirtildiği gibi)
Git Windows'un -> Tercihler -> Doğrulama ve işaretini kaldırın herhangi validatorsistediğiniz veya ihtiyacınız yoktur.
Eclipse 3.7 için Windows -> Tercihler -> Genel -> Başlatma ve Kapatma'yı kullanırsınız .
Eclipse'i çalıştırmak için Sun JVM'yi kullandığınızdan emin olun.
Linux'ta, özellikle Ubuntu'da, Eclipse, performansı önemli ölçüde düşük olan açık kaynak GCJ'yi kullanmak için varsayılan olarak yüklenir. update-alternatives --config javaEclipse'deki UI gizliliğini büyük ölçüde iyileştirmek için Sun JVM'ye geçmek için kullanın .
java -versionolmalısınız ( böyle bir şey söylemelisiniz openjdk version "1.8.0_131"). OpenJDK 9'un birçok görev için daha düşük performansa (daha yüksek gecikme) neden olduğunu düşünüyorum.
İpuçları için teşekkürler. Bu seçenekler (yukarıda belirtilmiştir) bana çok yardımcı oldu:
Pencereler:
Bellek artışı ve eclipse.ini dosyasındaki güncellenmiş Java sürümüm ile ilgili:
-Dosgi.requiredJavaVersion=1.6
-Xms512m
-Xmx512m
-XX:PermSize=512m
-XX:MaxPermSize=512M
-Xverify:none
Ayrıca, hız için optimizasyon yaptığımız için , JVM'nin kullanılmasına izin verilen maksimum bellek miktarıyla başlamasını sağlayan -Xmsdeğere ayarlamak -Xmx.
Linux / Ubuntu:
kullanma
update-alternatives --config java
-XmX) sisteminizin belleğine bağlıdır. Soruyu sorduğumda 512M, eski WinXP netbook'um için optimize edilmiş değerdi. Daha fazla
Başka bir performans artışı, etiket süslemelerini ( Windows -> Preferences; General -> Appearance -> Label Decorations) devre dışı bırakarak ve başlangıçta kullanılmayan yetenekleri ( ) devre dışı bırakarak elde edilebilir Windows -> Preferences; General -> Startup and Shutdown.
Ayrıca JVM'nize bağlı olarak farklı bir çöp toplama stratejisi seçerek ek performans elde edebilirsiniz.
Yeniden başlatma döngülerinden bıkmışsanız , ZeroTurnaround'un JavaRebel yazılımını kullanabilirsiniz . Bu, sunucu / istemci yeniden başlatmalarına harcanan süreyi kısaltacaktır.
Eclipse ile doğrudan ilgili olmasa da:
Windows 7 (ve muhtemelen Windows Vista) çalıştırıyorsanız, öğeleriniz varsayılan yerde (ana klasörünüz) ise çalışma alanı klasörünüzün dosya dizinini devre dışı bıraktığınızdan emin olun. Windows varsayılan olarak ana klasörünüzdeki her şeyi dizine ekler ve normalde çalışma alanınız için sadece bir israftır. (Explorer'daki çalışma alanı klasörünü sağ tıklayın, Özellikler -> Gelişmiş .)
Eclipse eklentileri tembel olarak yükler ve Subclipse gibi en yaygın eklentiler bunları kullanmazsanız hiçbir şey yapmaz. Çalışma süresi boyunca Eclipse'i yavaşlatmazlar ve bunları devre dışı bırakmanıza yardımcı olmaz. Aslında, Mylyn doğru kullanıldığında Eclipse'nin bellek ayak izini azalttığı gösterilmiştir.
Eclipse'i hiçbir performans cezası olmadan tonlarca eklenti ile çalıştırıyorum.
Sadece -Xmx anahtarıyla artırmanız gereken bellek değil, aynı zamanda perm gen boyutu . Bu sorunun Eclipse 3.4'te çözüldüğünü düşünüyorum.
Hem Windows hem de özellikle Linux'ta Eclipse'yi gerçekten hızlandıran başka bir şey daha var - JVM'yi RAM diskine yerleştiriyor.
Windows için Qsoft'un ticari RAM disk sürücüsünü kullanabilirsiniz .
Linux için Internet'teki çok sayıda makalede açıklanan yöntemlerden herhangi birini kullanın. RAM diskine JVM boyutundan% 10 daha büyük ek alan sağlamak önemlidir.
Bunu kontrol et. Bu gerçekten bir fark yaratıyor.
grep -rveya belki de kullanamaz vmtouchmısınız?
Bir ton bellek -Xmxveriyorum ( onu başlatan komuta bir anahtar ekleyin ) ve bırakmayı ve yeniden başlatmayı önlemeye çalışıyorum - En kötü gecikmeleri başlangıçta buluyorum, bu yüzden çok fazla RAM vermek çökmeden önce daha uzun süre devam etmemi sağlıyor dışarı.
En son yazılım (en son Eclipse ve Java) ve daha fazla RAM ile birlikte,
Ayrıca vmargs ve şeyler ayarladım. Ancak Windows'da Eclipse'yi gerçekten hızlandıran şey, antivirüs yazılımının "uygun" yapılandırmasıdır. Paketlenmiş dosyaların isteğe bağlı taranmasını devre dışı bırakmanız gerekir. jar dosyaları ve java ile ilgili birçok dosya boş alan için PKZIP algoritması ile paketlenmiştir. Eclipse tonlarca java dosyası kullandığından, bir antivirüs her birini ayrı ayrı açmaya ve taramaya çalışır. Windows platformu için: paketlenmiş dosyaların isteğe bağlı taramasını kapatın, aksi takdirde Eclipse alışılmadık derecede yavaş olacaktır. Lütfen bunun ne yazık ki devre dışı bırakılmasının sisteminizi saldırılara karşı zayıflattığını, kötü amaçlı yazılımların çoğunun paketleyicileri kullandığını unutmayın.
Performansı artırmak ve farklı eklentiler arasındaki çakışmayı azaltmak için çalışma zamanında hangi özelliklerin yükleneceğini yapılandırmak için bir eklenti uyguladım.
Eclipse'inize Android geliştirme araçları, C / C ++ geliştirme araçları, PHP , SVN , Git ve ClearCase eklentileri gibi birçok özellik yüklemiş olabilirsiniz . Bu nedenle Eclipse ağırdır ve çok fazla hafızaya sahiptir ve bazıları sıklıkla kullanılmaz.
Böylece, aracımı Android, Git ve Base Eclipse gibi farklı çalışma zamanı politikaları oluşturmak için kullanabilirsiniz, diğeri C / C ++, SVN ve Eclipse içerir. Bir dahaki sefer Eclipse, yalnızca Android ve Git'i içeren politikayı kullanıyorsanız belirtilen özellikleri yükler.
Denemek ve bana geribildirim vermek için bekliyoruz. :)
Bu aracın adı Equinox Advanced Configurator'dır .
Düşük çizilmemesi hızlı bir makineye sahip olmaktır. 16-32 GB RAM, SSD ve iyi bir işlemci ... ve işte oraya who0o0om.
Bu konudaki en iyi uygulamalar , ZeroTurnaround'un ücretsiz Eclipse Optimizer uygulamasında uygulanmaktadır .
Neye yardımcı olur?
Daha fazla ayrıntı için RebelLabs'ın bu makalesine göz atın .
Oluşturma yolunuzu yapılandırmaya çalışın. Kod tamamlama, tüm proje klasörünüzden geçmesi gerekiyorsa çok fazla bellek kullanır.
Açık sekmelerin sayısını sınırlarken performansta önemli bir iyileşme yaşadım (geçmişte sık sık 30'dan fazla sekme açtım). Eclipse'in bunu sizin için otomatik olarak halletmesine izin verebilirsiniz:
Pencere -> Tercihler -> Editörler -> editörleri otomatik olarak kapat
8 açık sekme >> işareti görünmeden önceki tutardır, bu yüzden 8'de bırakma eğilimindeyim.
Daha fazla sekme açılırken, en son erişilen sekmeler kapatılır.
-> Tüm editörler kirli veya sabitlenmiş olduğunda
Kaydedilmemiş değişiklikler varsa kaydetmek ve yeniden kullanmak isteyebilirsiniz (sekme kapatılacak, yerine yeni bir tane açılacaktır). Ya da yeni bir editör sonu açabilir ve böylece açık sekme miktarını (göze batmayan seçim) artırabilirsiniz.
Bazı sekmelerin otomatik olarak kapanmamasını istiyorsanız, bunları sabitleyebilirsiniz. Bu, raptiye simgesini (araç çubuğundaki en sağdaki simge, araç ipucu metni olarak "raptiye düzenleyici" ile) tıklayarak.
Bunu da deneyin, performansı artıracaktır:
dizinleri temizleme - {çalışma alanı yolu} .metadata.plugins \ org.eclipse.jdt.core temizleme geçmişi - {çalışma alanı yolu} .metadata.plugins \ org.eclipse.core.resources.history
Yukarıdaki klasörlerin temizlenmesi proje dosyalarını etkilemez.
**Tips for making Eclipse IDE Faster**
Küçük projelerle çalışırken tutulma daha hızlı çalışacaktır. Ancak büyük bir projeyle çalışmak zorunda olduğunuzda, hızı ile tahriş olacaksınız. Büyük bir RAM ile bile hızından memnun olmayacaksınız.Aşağıdaki adımlar, tutulmanın hızını artırmasına yardımcı olacaktır.
Windows -> tercih -> Genel -> Başlatma ve kapatma seçeneklerine giderek başlangıçta bazı eklentilerin istenmeyen etkinleştirilmesini kaldırın ve bu eklentileri görünümlerinizden hiçbirinde kullanmadığınızdan emin olun
Sizin için daha az kullanılan etiket süslemelerini devre dışı bırakmak, bazı performanslar elde etmenize de yardımcı olacaktır. Git > Dekorasyon - Windows> tercihi-> Genel-> Appearance-> Etiket
İstenmeyen projeleri kapatın ve bir proje grubundan diğerine sorunsuz bir şekilde geçmek için çalışma kümesi seçeneğini kullanın.
Eclipse kurulu konumunda bulunacak eclipse.ini dosyasını yapılandırın.
Configuring eclipse.ini should be based on your RAM
-Xms256m
-Xmx512m
-XX:PermSize=512m
-XX:MaxPermSize=512M
Ayrıca eclipse.ini'yi yapılandırmak için daha fazla seçenek için http://wiki.eclipse.org/Eclipse.ini adresine bakın.
Editörde çok sayıda sekmeyi açık tutmayın. Yaklaşık 20 sekme olması daha iyi. Kullanılmayan sekmeleri düzenli olarak kapatın. Kaynağı açmak için, her zaman çok sayıda sekme açmak yerine ctrl + shift + R ve ctrl + shift + T (java kaynağı) kullanabiliriz. + sekmeler açık). Tutulmanın bunu sizin için otomatik olarak halletmesine izin verebilirsiniz: Pencere-> Tercihler-> Editörler-> kapateditörler otomatik olarak 8 açık sekme >> işareti görünmeden önceki tutardır, bu nedenle 14'ü varsayılan değerim olarak ayarladım. Daha fazla sekme açılırken, en son erişilen sekmeler kapatılır. Tüm editörler kirli veya sabitlenmiş olduğunda. Kaydedilmemiş değişiklikler varsa, kaydet ve yeniden kullan komutunu verebilirsiniz (sekme kapatılacak, yerine yeni bir tane açılacaktır). Veya yeni bir editör sonu açıp açık sekme miktarını (göze batmayan seçim) artırabilirsiniz. Bazı sekmelerin otomatik olarak asla kapanmamasını istiyorsanız, bunları sabitleyebilirsiniz. Bu, raptiye simgesini (araç çubuğundaki en sağdaki simge, ipucu metni olarak “raptiye düzenleyici” ile) tıklayarak.
Git > Tercihler - - Pencereler> Doğrulama ve herhangi doğrulayıcılarını işaretini kaldırın istemediğiniz veya gerek.
Git Windows'un -> Tercihler -> Genel -> Görünüm -> ve işaretini herhangi bir animasyon istemediğiniz veya gerek.
Adresine git Windows'un -> Tercihler -> Maven ve çek 'otomatik güncelleme yok bağımlılıkları' .
Eğer bir Eclipse kullanarak GWT uygulaması , bu şekilde:
Eclipse'de bellek yetersiz hatası
Barındırılan mod yapılandırmasına aynı VM bağımsız değişkenlerini eklemeyi de unutmayın.
Eğer kullanırsanız Maven ve sarmaşık , konstrüksiyonlar sırasında işlemeyi zorlamaları durumunda konsollarını kontrol edin. Ivy kullanın ve bunun üzerine aynı sürüm ile değişen belirli JAR dosyaları (iç) var, bu yüzden onları getirmek için her zaman egzersiz gerekir.
Bir ağ sürücüsünde yansıttığınızı belirlediyseniz, oluşturma / okuma / yazma işlemlerinde gecikme yaşarsınız.
İhtiyacınız olmayan eklentileri devre dışı bırakın / kaldırın.
İhtiyacınız olmayan bakış açısı
Kullanılmayan veritabanı bağlantılarını kapat
Özel durumlarda, kötü performans bozuk h2 veya nwire veritabanlarından kaynaklanabilir. Eclipse PDT ve nWire'ı hızlandırmak için beş ipucunu okuyunDaha fazla bilgi için .
Çalıştığım yerde Debian'ı çalıştırmak için bir sanal makineye bağımlıyız . VM'leri test etmek için başka bir Eclipse sürümü yükledim, ancak diğer Eclipse sürümü çalışıyorsa bu bazen çakışmalar oluşturur. Eclipse sürümlerinin her ikisinin de paylaştığı paylaşılan bir klasör vardır. Ben yanlışlıkla bir kez arka planda çalışan Debian Eclipse kurulumunu bıraktı ve bu bana bozuk veritabanı dosyaları verdi.
Eclipse.ini dosyasını bellek kullanımı için yapılandırmanın dışında. "Başlatma ve kapatma seçenekleri" ile yapılandırdım. Tutulmam şimdi hızla yanıp sönüyor.
Eclipse'i standart eklentilerle hızlandırmanın tek gerçek yolu, daha fazla bellek vermek ve bazı durumlarda daha hızlı bir depolama alanına / birleştirilmiş sabit sürücüye erişmektir.
Bunun ötesinde performans açısından yapabileceğiniz pek bir şey yok: çoğu standart eklentinin sürekli çalışma süresi maliyeti yok, hatta Mylyn nispeten hızlıdır.
Makinenizde desteklenen en son JVM'ye yükseltme de yardımcı olabilir.
Bazı insanlar daha iyi performans elde etmek için eski Eclipse sürümlerine geçerler. Resmi sürümler yerine Eclipse classic'i kullanmak da mantıklı olabilir.
Bunları dene. İki yol var.
İlk Prosedür
Bu makaleye bakın.
http://www.javacodegeeks.com/2014/06/the-real-way-to-make-eclipse-run-faster-on-ubuntu.html
İkinci Prosedür.
Terminalde komutu yürütün.
ramdisk
Ubuntu için daha iyi performans ve hızlı yanıt almak için.
Ramdisk sistem belleğinin bir parçasıdır. Ubuntu varsayılan olarak ramdisk olarak fiziksel belleğin (RAM) yarısını kullanır ve
/ Dev / shm
normal disk alanı gibi kullanılabilir (dosyalar ve klasörler oluşturun ve sabit diskte depolandıklarından daha iyi performansla değiştirin). Ramdisk RAM'in yarısından fazlasını kullanıyorsa, veriler takas alanına taşınır. Ramdisk daha az kullanırsa, kalan RAM hala ne yapar.
Ramdisk'in üst sınırını ayarlama
Yukarıda belirtildiği gibi, ramdisk varsayılan olarak RAM'in yarısını kullanabilir. Üst sınırı değiştirmek istiyorsanız, aşağıdaki adımları izleyin:
Favori düzenleyiciniz tarafından / etc / fstab öğesini düzenleyin:
gksudo gedit / etc / fstab
Bu satırı bulun ve böyle görünmesi için değiştirin (yoksa bu satırı ekleyin ve 512M'yi istediğiniz gibi değiştirin.):
tmpfs / dev / shm tmpfs varsayılanları, boyut = 512M 0 0
Yeniden başlatın veya yeniden monte edin
/ Dev / shm
Ramdisk üzerine / tmp bağla
Kullanımı kolaylaştırmak için bir dizini
/dev/shm
aşağıdaki komutları kullanarak:
mkdir / dev / shm / tmp
chmod 1777 / dev / shm / tmp
bağlama - bağlama / dev / shm / tmp / tmp