2011-09-27 19 views
11

Sistemimde, Uygulamamla ilgili çok fazla jar dosyası var.Bir grup kavanoz içinde sınıf adı nasıl bulunur

Belirli bir sınıfı, tüm jar dosyaları için nasıl bulabilirim ??

Ctrl-Shift-T getiriyor ("Açık Tip" için, "tip" "class" gibi): O kavanoz dosyaları Eclipse projesinin inşa yolunda ise

size

+0

Sen superuser.com' 'bu sormak isteyebilirsiniz yerine –

+0

Olası yinelenen> http://superuser.com/questions/285793/finding-which-jars-contain-a-file –

cevap

29

ederiz bir arama kutusu. CamelType (yani StringBuilder yerine SB) yapabilirsiniz.

+1

CTRL yok mu + T, "Class" ' –

+0

Oops'in Tip Hiyerarşisini açar. Belki de Ctrl-shift-T. Afedersiniz. – Thilo

+1

Şimdi siz haklısınız. +1. –

2

Sen gerekir bir kaynak dosyada sınıf adını sağ tıklayın ve Bildirimleri bağlam menü öğesinin alt öğelerinden birini seç - yani sağ sınıf adını tıklayın ve Beyannameleri'ni seçmek/Project. Bu, sınıfın tüm bildirimleri için projeyi arayacak ve standart Eclipse arama sonuçları görünümünü açacaktır. Eclipse projenizde bir kitaplık olarak kavanozunuz olduğunu varsayıyorum. bunun yerine dosya sisteminde bunu yapmak istiyorsanız

ardından JAR dosyaları üzerinde yineleme için bir for döngüsü kullanın ve grep veya findstr yoluyla (sizin platforma bağlı olarak) sınıf dosyaları ve borunun listesini almak için jar tf FILENAME kullanmak . Eğer bash kullanıyorsanız, aşağıdaki gibi bir şey hile yapacağını:

bash-3.2$ for f in *.jar 
do 
    result=$(jar tf $f | grep '/DBObject.class$') 
    [ -n "$result" ] && echo "$f contains $result" 
done 
mongodb-api-2.6.3.jar contains com/mongodb/DBObject.class 
bash-3.2$ 

bir komut isteminde bir FOR döngü kullanarak Windows benzer bir şey uydurmak olabilir ama FINDSTR doğru sonuç ERRORLEVEL ayarlarsa Hatırlamıyorum . Aşağıdaki sözdizimi tamamen emin değilim çalışması gerekir: Ben Hatırlarsanız ben Windows makineye aldıktan sonra

C:\Directory\Containing\Jars> FOR %I IN (*.jar) DO @(
    FOR /F %J IN ('jar tf %I') DO ECHO "%J: %I" 
) | FINDSTR /R /C:"/DBObject.class$" 
mongodb-api-2.6.3.jar: com/mongodb/DBObject.class 
C:\Directory\Containing\Jars> 

, bu düzenleme edeceğiz.

+0

özyinelemeli arama için herhangi bir şans (windows durum)? –

İlgili konular