ฉันจะซ่อนไฟล์. class จากไดอะล็อก Open Resource ใน Eclipse ได้อย่างไร?


210

ฉันไม่ต้องการแก้ไขชุดการทำงานใด ๆ ฉันต้องการวิธีการในพื้นที่ทำงานและโครงการทั้งหมดป้องกันไฟล์. class ไม่เคยแสดงใน Open Resource Dialog มีวิธีทำเช่นนี้หรือไม่?


3
คำตอบเก่าเกินไป ฉันใช้ eclipse นีออนและสิ่งนี้ใช้ได้กับฉัน: pujansrt.blogspot.com.tr/2013/04/…
kodmanyagha

ใน Eclipse Oxygen.2 โซลูชันที่แสดงไว้ที่นี่จะไม่เปลี่ยนพฤติกรรมของกล่องโต้ตอบแบบเปิดทรัพยากรสำหรับโครงการที่นำเข้า Maven โดยมีการทำเครื่องหมาย "ได้รับ" หรือไม่เลือกในโฟลเดอร์เป้าหมาย: ไฟล์ * .class ยังคงเสนอให้เลือก
chrisinmtown

คำตอบ:


245

ทางเลือกหนึ่งคือการกรองทรัพยากรที่ได้รับ ที่มุมขวาบนของกล่องโต้ตอบ 'เปิดทรัพยากร' มีลูกศรที่คุณสามารถคลิกเพื่อเปิดเมนูดร็อปดาวน์สำหรับการกรอง ยกเลิกการเลือกตัวเลือก 'แสดงทรัพยากรที่ได้รับ' หากมีการทำเครื่องหมายไว้

หากคุณยังคงเห็นไฟล์ '.class' ไฟล์เหล่านั้นอาจไม่ถูกทำเครื่องหมายว่าได้รับมา หากพวกเขาอยู่ในลำดับชั้นของโฟลเดอร์ของตัวเองคุณสามารถแก้ไขได้โดยคลิกขวาที่โฟลเดอร์รูทเพื่อแก้ไขคุณสมบัติของโฟลเดอร์และทำเครื่องหมายที่ช่อง 'ได้รับ' หากพวกเขากำลังผสมกับไฟล์ '.java' ของคุณ ... โชคร้ายคุณจะต้องตั้งค่าคุณสมบัติที่ได้มาในแต่ละไฟล์ '.class' ด้วยมือ

เท่าที่ฉันสามารถบอกได้ว่าไม่มีวิธีการทำเครื่องหมายไฟล์คลาสเป็นทรัพยากรที่ได้รับมาทั่วโลกสำหรับพื้นที่ทำงาน แต่ฉันเชื่อว่าเมื่อคุณสร้างโครงการ Java ใหม่โฟลเดอร์ 'bin' จะถูกทำเครื่องหมายว่าได้มาจากค่าเริ่มต้น (ถ้าคุณใช้ )


นี่คือภาพหน้าจอบางส่วนจาก Eclipse Kepler วิธีแรกแสดงวิธีการกรองทรัพยากรที่ได้รับโดยยกเลิกการเลือก 'แสดงทรัพยากรที่ได้รับ' ในกล่องโต้ตอบเปิดทรัพยากร ที่สองแสดงวิธีการตั้งค่าคุณสมบัติ 'Derived' บนทรัพยากร

ป้อนคำอธิบายรูปภาพที่นี่

ป้อนคำอธิบายรูปภาพที่นี่


6
ฉันรู้ว่ามีวิธีการทำเช่นนี้ ฉันมีการตั้งค่านี้แล้วในบางโครงการ แต่เมื่อฉันนำเข้าใหม่ทันทีไฟล์. class ก็ปรากฏขึ้นอีกครั้ง เพิ่งต้องผ่านและทำเครื่องหมายโฟลเดอร์ 'เป้าหมาย' ทั้งหมดที่ได้รับ สมบูรณ์
bergyman

โปรดทราบว่าช่อง 'แสดงทรัพยากรที่ได้รับ' ดูเหมือนจะหายไปในอินดิโก้ โชคดีที่ทำให้แน่ใจว่าโฟลเดอร์ที่มีไฟล์. class ถูกตั้งค่าเป็นได้รับ (ตามคำแนะนำด้านบน) ดูเหมือนว่าจะซ่อนไฟล์ที่ไม่ต้องการอย่างถูกต้อง
แมตต์แคมป์เบล

5
ฉันได้เปิด.classไฟล์ในความพยายามที่จะค้นหามันเป็นโฟลเดอร์ดังนั้นหลังจากทำเครื่องหมายเป็น Derived มันยังคงปรากฏขึ้น ฉันต้องคลิกขวาและทำเครื่องหมาย "ลบออกจากประวัติ" เพื่อให้มันหายไป
mgarciaisaia

มันใช้งานได้ แต่ในทางตรงกันข้ามแน่นอนสำหรับฉัน เมื่อฉันทำเครื่องหมายที่ 'Show Derived Resources' .class files จะไม่แสดงในรายการการค้นหา แปลก มีใครเห็นพฤติกรรมตรงข้ามนี้ไหม
mtk

3
ใช้งานไม่ได้กับหลายโมดูล maven eclipse
nir

135
  1. คลิกขวาที่โครงการและเลือก Properties ป้อนคำอธิบายรูปภาพที่นี่
  2. ขยายทรัพยากรและคลิกที่Resource Filters
  3. คลิกAdd Filter...เพื่อสร้างตัวกรองใหม่ ป้อนคำอธิบายรูปภาพที่นี่
  4. บนกล่องโต้ตอบที่เปิดขึ้น
    1. เลือกปุ่มExclude allและ Filesปุ่มตัวเลือก
    2. ภายใต้แอตทริบิวต์ของไฟล์และโฟลเดอร์ให้ป้อน*.class
  5. คลิก OK

ป้อนคำอธิบายรูปภาพที่นี่

หากต้องการยกเว้นลำดับชั้นไดเรกทอรีทั้งหมดเช่นtargetไดเรกทอรีให้เลือกFiles and foldersปุ่มตัวAll children (recursive)เลือกและช่องทำเครื่องหมาย

แก้ไข

ไม่รวมสิ่งต่อไปนี้สำหรับการOpen Resourceโต้ตอบล้างข้อมูลทั้งหมด

  1. ไฟล์ * .class
  2. ช่องเก็บโฟลเดอร์
  3. สร้างโฟลเดอร์
  4. เป้าหมายโฟลเดอร์

หากไม่รวมทั้งหมด 4 จะไม่ทำงาน


2
@dips - ใช้*.classกับเครื่องหมายดอกจันเพื่อจับคู่ไฟล์คลาสทั้งหมด
David Harkness

8
ช่องทำเครื่องหมายแบบเรียกซ้ำได้รับความเห็นของฉันมันเป็นเรื่องที่ค่อนข้างง่ายสำหรับพฤติกรรมที่จะถูกปิดใช้งานตามค่าเริ่มต้น
เสือชีต้า


9
สิ่งนี้ทำงานได้ดีกว่าคำตอบที่ยอมรับ ขอบคุณมาก
raja777m

1
สามารถยืนยันผลงานนี้ได้ดีเยี่ยม! ความแตกต่างที่สำคัญระหว่างสิ่งนี้กับโซลูชันของฉันคือโซลูชันนี้ซ่อนไฟล์. class ในมุมมองทรัพยากรทั้งหมดเช่น Package Explorer และ Navigator สิ่งนี้อาจทำงานได้ดีขึ้นหรือแย่ลงสำหรับคุณขึ้นอยู่กับความต้องการและความชอบของคุณ
Kevin K

37

ในการเปลี่ยนพฤติกรรมนี้และซ่อนไฟล์“ .class” คุณต้องทำสิ่งต่อไปนี้

  1. ค้นหาโฟลเดอร์เอาต์พุตคลาสของคุณในหน้าต่าง“ Project explorer” ซึ่งมักเรียกว่าbinหรือเป้าหมายสำหรับโครงการ Maven

  2. คลิกขวาที่โฟลเดอร์นี้แล้วคลิก Properties

  3. ติ๊กมาช่องทำเครื่องหมาย ( ปล่อยให้มันไม่ จำกัด ) และคลิกOK

ไฟล์. classจะถูกซ่อนไว้ในอนาคต

ที่มา: http://ayubmalik.co.uk/2011/12/hide-class-files-when-opening-a-type-or-resource-in-eclipse-ide/


เห็นด้วยนี่เป็นทางออกที่ดีที่สุด การแยกไฟล์คลาสออกจากรีซอร์สทำให้คลาสไม่พบข้อยกเว้นระหว่างรันไทม์
rveach

คุณต้องยกเลิกการเลือก "แสดงทรัพยากรที่ได้รับ" ตามที่ระบุไว้ในคำตอบยอดนิยมเพื่อให้สามารถใช้งานได้ คุณทั้งสองมีคำตอบที่สมบูรณ์
Noumenon

หากต้องการดูโฟลเดอร์เอาต์พุตคลาสใน Oxygen คุณอาจต้องยกเลิกการเลือก "Java output folder" ในตัวกรองผู้จัดการโครงการและการปรับแต่ง (คลิกที่ลูกศรชี้ลงที่มุมขวาบน)
Noumenon

โซลูชั่นที่สมบูรณ์แบบ
มาห์มุดซาเลห์

ไฟล์ในโฟลเดอร์เป้าหมายได้รับมา ดังนั้นคุณต้องโกหก Eclipse เพื่อให้มีการทำงานแบบเปิดทรัพยากรหรือไม่
chrisinmtown

15

Working setsคุณสามารถใช้ จากเมนูแบบเลื่อนลงเดียวกันSelect working setในทรัพยากรเปิดกล่องโต้ตอบเลือก มันจะเปิดกล่องโต้ตอบชุดการทำงานที่คุณสามารถสร้างชุดการทำงานหากคุณยังไม่มี

เมื่อสร้างขึ้นใหม่ให้เลือกประเภทResourcesและเลือกโฟลเดอร์ในพื้นที่ทำงานของคุณที่จะพิจารณาเป็นตัวเลือกสำหรับการค้นหาหรือเปิดทรัพยากร ฉันได้รวมเฉพาะsrcและtestโฟลเดอร์และมักจะpom.xmlและไฟล์การกำหนดค่าอื่น ๆ

ด้วยโครงการขนาดใหญ่สองสามโครงการที่ฉันกำลังทำอยู่ก็มีผลต่อการค้นหาความเร็วเช่นกัน


1
+1 ขอบคุณการใช้Derivedโซลูชันไม่สามารถทำได้สำหรับฉันโฟลเดอร์จำนวนมากเกินไป
marcinj

3

Eclipse Luna - ไปที่ลิงค์ต่อไปนี้ http://help.eclipse.org/luna/index.jsp?topic=%2Forg.eclipse.platform.doc.user%2Ftasks%2Ftasks-48b.htm
หรือ
สร้าง ชุดการทำงาน (รวมถึงโครงการทั้งหมด)
2. บน "แพคเกจ Explorer" คลิกที่ "ตัวกรอง" แผง (ในเมนูเดียวกับที่คุณเพิ่งสร้างชุดการทำงาน) และยกเลิกการเลือก "ไฟล์ชั้นใน" + คลิกตกลง

ที่ทำงานให้ฉัน


2

บางครั้งคุณไม่สามารถทำเครื่องหมาย build หรือ bin folder เป็น Derived resource เนื่องจาก eclipse package explorer หรือ project explorer ไม่แสดง build หรือ bin โฟลเดอร์ในมุมมองโครงการ

สิ่งที่คุณต้องทำเพื่อแสดงโฟลเดอร์บิลด์ในมุมมองโปรเจ็กต์:

  1. ไปที่Project > Properties > Java Build Path > Source >เปลี่ยนโฟลเดอร์เอาท์พุทเริ่มต้นเป็น build1 หมายเหตุ: มันจะขอให้คุณลบโฟลเดอร์เก่าและเนื้อหาในโฟลเดอร์นั้นกด No (เพื่อเรียกคืนภายหลัง)

  2. ตอนนี้โฟลเดอร์ build จะมองเห็นได้บน package explorer ไปที่คุณสมบัติโฟลเดอร์และทำเครื่องหมายเป็น Derived

  3. ตอนนี้เปลี่ยนโฟลเดอร์เอาต์พุตเริ่มต้นของคุณกลับเป็นบิลด์ (เพื่อคืนค่าการตั้งค่าเดิม)

1

กล่องโต้ตอบ Open Resource เวอร์ชัน 3.5 มีวิธีเปิด / ปิด "Show Derived Resources" จากเมนูดรอปดาวน์ขนาดเล็กที่มุมขวาบน การปิดเครื่องจะซ่อนคลาส

หรือ

คุณสามารถพิมพ์นิพจน์ในกล่องข้อความ "เลือกรายการที่จะเปิด" เช่น: * .java



0

การแสดงหรือซ่อนไฟล์ในมุมมอง Project Explorer คุณสามารถเลือกที่จะซ่อนไฟล์ระบบหรือไฟล์คลาสที่สร้างขึ้นในหนึ่งในมุมมองการนำทาง (ไฟล์ระบบคือไฟล์ที่มีนามสกุลไฟล์ แต่ไม่มีชื่อไฟล์เช่น. classpath)

บนแถบเครื่องมือสำหรับ Project Explorer คลิกปุ่มเมนูปุ่มเมนูเพื่อเปิดเมนูแบบเลื่อนลงของตัวเลือกการแสดง เลือกปรับแต่งมุมมอง .. ,.

ในกล่องโต้ตอบที่เปิดขึ้นให้เลือกแท็บตัวกรองแล้วเลือกช่องทำเครื่องหมายสำหรับประเภทของไฟล์ที่คุณต้องการซ่อน นอกจากนี้คุณสามารถ จำกัด ไฟล์ที่แสดงเป็นชุดทำงานได้

ป้อนคำอธิบายรูปภาพที่นี่ บนแถบเครื่องมือสำหรับ Project Explorer คลิกปุ่มเมนูปุ่มเมนูเพื่อเปิดเมนูแบบเลื่อนลงของตัวเลือกการแสดง เลือกเลือกชุดการทำงาน ... เลือกชุดการทำงานที่มีอยู่จากรายการหรือสร้างชุดการทำงานใหม่โดยเลือกใหม่เลือก ที่นี่

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.