Eclipse aramasından klasörleri hariç tutma


263

Belirli klasörlerin (ve tüm alt klasörlerinin) Eclipse içinde arama yapmasını engellemenin bir yolu var mı?


1
Google çalışanları: bkz. (Atzz'un cevabı :) stackoverflow.com/a/6111002/1599699 - aradığınız cevap bu, kabul edilen cevap değil.
Andrew

Bu artık kabul cevaptır @ Andrew
Donal

HERKES İÇİN ADALET!
Andrew

Yanıtlar:


241

İşte benim için işe yarayan (Helios kullanıyorum - belki de bu soru ilk sorulduğunda bu şekilde mevcut değildi?)

  • Proje -> Özellikler -> Kaynak Filtreleri'ne gidin.
  • Click Ekle .
  • Filtre türünü seçin : Tümünü hariç tut
  • Aşağıdakilere Uygula'yı seçin : Klasörler ; kontrol edin Tüm çocuklar (özyinelemeli) .
  • Öznitelikler olarak, seçim Ad , eşleşir'i , .svn(örneğin).

(Aslında, bir .*seferde .svn, .hg vb. Filtrelemek için kullanıyorum .)

Proje özellikleri iletişim kutusunu tamamladıktan sonra, bu dizinler artık aramada görünmeyecektir. Aslında, Eclipse, mevcut arama sonuçları pencerelerini otomatik olarak güncelleyecek ve şimdi filtrelenen tüm eşleşmeleri kaldıracak kadar naziktir.


27
Eclipse'nin 2011 itibariyle en son sürümleri için (Helios & Indigo), bu kabul edilen cevap ve bunu yapmanın en kolay yolu olmalıdır.
András Szepesházi

9
Bu, aynı anda yalnızca bir projeye uygulanabileceğinden, türetilmiş klasörleri işaretlemekten daha fazla bir kazanç değildir ... ve filtrelere kaç kez yazmanız gerektiğine bağlı olarak, daha uzun sürebilir.
egid

Bu yöntemi kullanırken, kaynak filtresini ekledikten sonra arama geçmişinizi de (arama panelindeki aşağı oklu el feneri kullanarak) temizlediğinizden emin olun. Aksi takdirde, herhangi bir arama süresi kaydetmezsiniz .git/.../filename.file doesn't existve arama önbelleği (sanırım?) Hala .git klasörünü bakmak için geçerli bir yer olarak gördüğünden hata alırsınız.
coredumperror

18
Bu çalışır, ancak paket gezginindeki dosyaları gizler. Dosyaları düzenlemek isteyebiliriz, ancak arama sonuçlarında görmeyebiliriz.
Aram Kocharyan

Denediğimde, bu, arama sonuçlarını filtrelemek için çalıştı, ancak hatalar almaya başladım "Projede 'Mercadosa-webapp' üzerinde 'AspectJ Builder' çalışan hatalar var. Kaynak diskte zaten var: '/MyProject/target/MyProject-1.0/WEB -INF / freemarker / site / file.ftl '. Kaynak diskte zaten var:' /MyProject/target/MyProject-1.0/WEB-INF/freemarker/site/file.ftl '. "
Marc

292

Hızlı ve kirli yol:

Bir klasöre sağ tıklayın, özelliklere gidin ve bir klasörü türetilmiş olarak işaretleyin. Türetilmiş varlıklar varsayılan olarak arama dışında bırakılır. Bu yaklaşımla ilgili sorun, Eclipse klasörünü silerseniz (Eclipse içinden veya dışarıdan, ardından proje ağacını yenilemek) klasörün türetildiğini "unutması" dır . Eclipse'de olduğu gibi, bu da mevcut versiyona (yazma sırasında 4.6 Neon) uygulanan uzun süredir devam eden bir hatadır (bu durumda 10 yıl).

Güvenli yol:

Yalnızca aramak istediğiniz varlıkları içeren bir çalışma kümesi oluşturun ve yalnızca bu çalışma kümesi içinde arama yapın. Bkz Dave Ray'in cevabı bu prosedürün ayrıntıları için.


2
Dave'in cevabında belirttiği gibi: gerçekten türetilmeyecek şeyleri ayarlamak sorunlara neden olabilir. Dağıtım oluşturmak için Maven kullanırken olduğu gibi.
Arjan

2
Juno'da bir klasörü türetilmiş olarak işaretlemek onu arama dışında bırakmaz. O ile ilgili olabilir bu yüzden Mac OS üzerinde çalışıyorum ben bu işletim sistemi üzerinde düzgün çalışmıyor bir dizi özellik görüyorum olarak
Marc

MS-Windows XP altında Juno SR2 üzerinde çalışıyor. Ve beni rahatsız eden klasör gerçekten türetildi (dosyaları listelemekle birlikte bazen isabet sayısıyla sonuçlanan derleme klasörü).
starblue

@Instantsoup Aramanın kendisi neden klasörleri dışlayamıyor? Yani, "!" sadece bunun için karakter, değil mi? Benim için neden işe yaramadığını anlamıyorum.
android geliştirici

3
'Yalnızca aranmasını istediğiniz varlıkları içeren bir çalışma kümesi' oluşturmak çok güvenli bir yöntem değildir. Aslında KAPSAYICI bir filtre oldukça güvensizdir. Hariç tutulan bir dizine kardeş olan yeni bir dizin veya dosya oluşturduğunuzu düşünün. Bu durumda, aramaya DAHİL ETMEYİ unutmayın. Unutursanız, arama tehlikeli olabilir ve Eclipse aramasının güvenilir olmadığına inanmanıza neden olan yanlış negatiflere sahiptir.
JW.

81

Türetilen kaynakların işaretlenmesinin diğer alanlarda sorunlara neden olabileceğini hayal edebiliyorum. Bunun yerine, aramaya dahil etmek istediğiniz klasörlerle bir çalışma kümesi oluşturun:

  • Arama iletişim kutusunu aç ( Ctrl+ H)
  • Arama kapsamını Çalışma Kümesi olarak değiştirme
  • Seç ... 'i tıklayın.
  • Aramak istediğinizi içeren yeni bir Çalışma Kümesi oluşturmak için Yeni'yi tıklayın (veya Tümünü Ekle'yi seçin ve ardından filtrelemek istediklerinizi kaldırın

5
Bunun da sorunları var. Yukarıdaki Instantsoup'un cevabı altındaki yorumuma bakın. Bu KAPSAYICI filtreyle, bazı durumlarda dosya veya klasör eklediğinizde bunları aramaya dahil etmeyi unutmayın. Unutursanız tehlikeli yanlış negatifler alırsınız. Hangi ideal değil.
JW.

Eclipse Kepler'da, Yeni'yi tıklattıktan sonra gelen bir "Çalışma grubu türü seçin" iletişim kutusu vardır. (Her türlü dosyayı bulmak için bu noktada "Kaynak" ı seçmeniz gerektiğini belirtmek gerekir.)
Steve Chambers

1

Eclipse Juno'daki en hızlı ve kirli yol:

  1. Klasöre sağ tıklayın .
  2. Özellikler'e gidin.
  3. C / C ++ Derlemesi'ne gidin.
  4. "Kaynağı derlemeden hariç tut" seçeneğini işaretleyin.
  5. Tamam düğmesine tıklayın.
  6. Projeye sağ tıklayın .
  7. Dizin'e gidin.
  8. Yeniden oluştur'u tıklayın.
  9. Rahatlayın!

1
  • Projenize sağ tıklayın
  • seçmek Properties
  • Seçin Resource->Resource filters
  • Tıklayın Add filter
  • Aşağıdaki ayarları seçin:
    • Tümünü hariç tut
    • Dosyalar ve Klasörler
    • Tüm çocuklar (özyinelemeli)
  • Değişiklik Name içinProject Relative Path
  • Giriş metnini (bin$|bin/.*|build/.*|build$)(değiştir binve buildhariç tutmak istediğiniz klasörlerin adlarıyla) doldurun
  • kene Regular expression

Tamam'a ve ardından Uygula'ya basın.

feragat

Bu, @ atzz'ın cevabına dayanıyor, bu da bunu anlamama yardımcı oldu. Bununla birlikte, belirli dosyaların nasıl hariç tutulacağı sorusunu yanıtlarken, belirli klasörlerin nasıl hariç tutulacağı sorusuna cevap vermedi.


0

Eclipse'de bir klasör veya dosyanın aranmasını hariç tutma

1 Right-click on the file/folder.
3 Click on the "Properties" option.
4 Select the "Resource" option.
5 Place a check next to the "Derived" attribute.

Umut yardımdır.

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.