Intelli J IDEA, endeksleri güncellemek için sonsuza kadar sürer


112

Intelli J'nin bir proje için endeksleri güncellemesi çok zaman (neredeyse 12 saat) alması normal mi? Intelli J'yi makineme yeni yükledim ve oldukça büyük bir Maven projesini içe aktardım (13k + dosya).

Projenin büyük olduğunu anlıyorum ama tüm gece bilgisayarımın açık kalmasına izin verdim ve sabah uyandığımda Intelli J henüz dosyalar için dizin güncellemesini bitirmedi, bu da açılır pencereden bu yana herhangi bir şey yapmayı imkansız kılıyor 'Dizin Güncelleniyor' başlığı ekranın ortasında asılı kalmaya devam ediyor.


2
IntelliJ'e ne kadar bellek ayırdınız ? Bu kadar çok kaynak dosyaya sahip herhangi bir projem yok, ama bu kadar uzun sürmesi pek olası değil.
Dave Newton

@DaveNewton Bunun için 512M ayırdım.
0x56794E

1
@abcXYZ Yeterince yakın değil; 1G'nin altındaki hiçbir şeyi denemem bile. Sanal makineyi atıp atmadığınızı kontrol edin.
Dave Newton

JetBrains desteğiyle iletişime geçmelisiniz. CE kullanıcıları için bile bu tür sorunları destekleme konusunda nispeten iyidirler.
noahlz

1
Bazen, intellij'i komut satırından başlatabilirsiniz. Git kimlik bilgilerini istiyor olabilir.
GabLeRoux

Yanıtlar:


112

Forumlarda farklı IntelliJ Sürümleri için birkaç cevap var, işte denediğim şey (IntelliJ 13).

  • Daha fazla Bellek verin. 'Endekslerin güncellenmesi' ile hiçbir şeye yardımcı olmuyor
  • Projede .idea ve iml'yi silin. Yardımcı olmuyor.

Sonunda, 'Endeksleri güncelleme' ile ilgili sorunumu çözen şey şuydu:

  • user / .IntellIJIdea13 / system / içindeki 'caches' klasörünü sil

66
Teşekkürler! Sanırım File / Invalidate Cachesaynısını yapıyor. Bana yardımcı oldu.
Pavel Vlasov

1
Benim için çok zaman kazandın! Teşekkürler
Daria

Sen bir hayat kurtarıcısın.
blackiii

Benim intellij fikrim aslında önbellekleri geçersiz kıldıktan sonra endeksleri güncellemeye başladı, bu yüzden gerçek için bir saatten fazla bekledim, ama sonra sorun yoktu.
GH

68

Önbelleği silmeyi denedim ve mükemmel çalışıyor. Çözüm arkadaşlar için teşekkürler.

Sadece:

  1. IntelliJ IDEA'yı açın
  2. Dosyayı seçin menüsünü
  3. Seç Geçersiz Kılan Önbellekler / Yeniden ... menü.
    Seçildikten sonra, bir dizi seçenek içeren bir açılır pencere açılır.
  4. Geçersiz Kıl ve Yeniden Başlat'ı seçin ve
    bunu yapmadan önce tüm değişikliklerinizi kaydettiğinizden emin olun, aksi takdirde kaydedilmemiş bazı değişiklikleri silebilir.

Buna bir kez bastığınızda, IntelliJ yeniden başlayacak ve ardından tüm indekslemenin gerçekten hızlı yapıldığını görebilirsiniz.


Bu tavsiyeler benim için bir fark yaratmıyor. 75 modülden ve binlerce kaynak dosyadan ve diğer rastgele karışıklıklardan oluşan korkunç bir şeyim var. Her neyse, evde de deneyeceğim. Teşekkürler.
Richard Gomes

Bir cazibe gibi çalıştı. Teşekkürler
Alex Theedom

14

Kitaplık klasöründeki önbellekleri silin

rm -rv ~/Library/Caches/IdeaIC15/caches/

Mac OSX'te önbelleğin konumu ~/Library/Caches


Bu konum ~ / Kitaplık yalnızca iş istasyonunuzda geçerli olabilir, sanırım.
Richard Gomes

Düzenlenen. Öneriniz için teşekkürler
Shubham Chaudhary

Benim durumum, hem nihai hem de topluluk sürümünü kurmuş olmam. Ve önce nihai sürümü kullanarak projeler açtım. Sadece önbellekleri silmek benim için işe yaramadı. Önbellekleri silmem ve dizin oluşturma sorununu gideren sistemimi yeniden başlatmam gerekiyor.
Michelle

3

IntelliJ 2017.2.3 ile aynı sorunu yaşadım - yani projem dizinleri tekrar tekrar güncellemeye devam ediyordu.

Ana dizinimde disk kotamı aştığımı keşfettim. Varsayılan olarak IntelliJ, dizinleri ana dizinde şu şekilde saklar:

~/.IdeaIC2017.2/system/index/

Benim için çözüm şuydu:

  1. IntelliJ'den çıkın
  2. .IdeaIC2017.2 dizininin tamamını daha fazla alana sahip başka bir bağlantıya taşıyın:

    mkdir /space/ideaConfig
    mv ~/.IdeaIC2017.2 /space/ideaConfig/IdeaIC
  3. bin/idea.propertiesYeni dizin / yapılandırma konumunu işaret edecek şekilde güncelleyin :

    idea.config.path=/space/ideaConfig/IdeaIC/config
    idea.system.path=/space/ideaConfig/IdeaIC/system

Bu soruya verilen diğer yanıtlardan bazılarının aynı sorundan kaynaklanmış olması ve "önbellek klasörünün silinmesi", "önbelleklerin geçersiz kılınması" vb. Tarafından yanlışlıkla düzeltilmiş olması muhtemeldir; bu, potansiyel olarak dizin oluşturmak için yeterli disk alanını serbest bırakacaktır.


1

Kabul edilen yanıtlar ve diğer yanıtlar belirli bir sorunu çözebilse de, çok uzun indeksleme süreleriyle ilgili sorunun genellikle bir havuzun çok sayıda dosya içeren bir dizini içermesinden veya bunlara bağlanmasından kaynaklandığını fark ettim. Genellikle bu test için yapılır ve söz konusu dizin aslında projenin bir parçası değildir, örneğin VCS tarafından yok sayılır.

IDE, indeksleme sırasında bu dizinleri otomatik olarak yok saymaz, ancak dizini projeden "dışlamak" mümkündür. Bu, indekslemeyi de önleyecektir.


1

Sanırım Idea, yararlı bir iş yapmaktan daha çok çöp toplamaktır. Varsayılan yerine G1 GC kullanın.

Yardım - Özel Sanal Makine Seçeneklerini Düzenle

-XX:+UseG1GC

onun yerine

-XX:+UseConcMarkSweepGC

ve tabii ki Idea'yı yeniden başlatın.

Dezavantajı: G1, işlemi durdurmadan önce çöp toplamaya çalışır. Bu çılgınlık, ama yaptığı bu. 16G yığın içeren bir program için temizleme 27 dakika sürmüştür. Bu nedenle, Fikrinizi 16G yığın kullanacak şekilde yapılandırmayın.


1

daha kolay yol şu şekildedir: dosya -> ayarlar -> (işaretini kaldırın) Dosyaları çerçeve veya düzenleyici sekmesinde senkronize et aktivasyonu.

görüntü açıklamasını buraya girin


0

muhtemelen - önbelleğe alma sistemindeki eski hata. TÜM sürümlerde, özellikle IntelliJ veya JDK sürümünüzü yükseltirseniz gerçekleşir. Düzeltmek için: 1) GUI'yi kapatın. 2)% HOME_DIR% .IntelliJIdeaXXXX \ system \ caches konumuna gidin ve silin 3) GUI'yi yeniden başlatın.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.