Eclipse: การอ้างอิงการค้นหา Maven ไม่ทำงาน


91

ฉันสร้างโครงการ Maven อย่างง่ายใหม่ในพื้นที่ทำงานใหม่

เมื่อฉันเปิดไฟล์ pom.xml 's Dependenciesมุมมองในการแก้ไข Eclipse และผมก็เลือกAdd..พึ่งพาไม่มีผลการค้นหาไม่ว่าสิ่งที่ค้นหาเกณฑ์ฉันป้อนข้อมูลในช่องค้นหา:

Results for 'spring' (0)มันทันทีให้ฉันยกตัวอย่างเช่น

ในพื้นที่ทำงานอื่นของฉันกับโปรเจ็กต์ที่มีอยู่ฉันไม่มีปัญหานี้

มีวิธีแก้ไขไหม


3
ฉันเชื่อว่ามีวิธีแก้ไขในลิงค์ต่อไปนี้: stackoverflow.com/questions/7065478/classic-error-unable-to-update-index-for-centralhttp-repo1-maven-org-maven2 [1]: stackoverflow.com/questions/ 7065478 / …
Eric Wang

คำตอบ:


187

การค้นหาสิ่งประดิษฐ์ Eclipse ขึ้นอยู่กับไฟล์ดัชนีของที่เก็บ ดูเหมือนว่าคุณไม่ได้ดาวน์โหลดไฟล์ดัชนี

ไปที่Window -> Prefrences -> Mavenและเลือก"ดาวน์โหลดการอัปเดตดัชนีที่เก็บเมื่อเริ่มต้น" "ดาวน์โหลดโปรแกรมปรับปรุงดัชนีพื้นที่เก็บข้อมูลในการเริ่มต้น"รีสตาร์ท Eclipse จากนั้นดูที่มุมมองความคืบหน้า ควรดาวน์โหลดไฟล์ดัชนี

หลังจากดาวน์โหลดเสร็จสิ้นการค้นหาสิ่งประดิษฐ์จะพร้อมใช้งาน

การตั้งค่า Maven

อัปเดต คุณต้องสร้างดัชนีที่เก็บ Maven ของคุณใหม่ใน 'maven repository view'

ในมุมมองนี้ให้เปิด 'Global Repositories' คลิกขวาที่ 'central' เลือก 'Full Index Enable' จากนั้นคลิก 'Rebuild Index' ในเมนูเดียวกัน

ไฟล์ดัชนี 66M จะถูกดาวน์โหลด

Maven Repositories -> สร้างดัชนีใหม่


4
Window-> Preferences-> Maven
McLovin

5
การอัพเดตที่เก็บเมื่อรีสตาร์ทใช้เวลานานมากไม่รู้ว่าจะเสร็จสมบูรณ์หรือไม่มีทางเลือกอื่นอีกไหม
Vasanth Nag KV

5

ในคราสของคุณไปที่ Windows -> การตั้งค่า -> Maven การตั้งค่าภาพหน้าจอ Maven ทำเครื่องหมายที่ตัวเลือก "ดาวน์โหลดการอัปเดตดัชนีที่เก็บเมื่อเริ่มต้น" คุณอาจต้องการรีสตาร์ทคราส

ไปที่ Windows -> แสดงมุมมอง -> อื่น ๆ -> Maven -> ที่เก็บ Maven Maven Repository View Screenshot

เมื่อวันที่ Maven เก็บแผงขยายพื้นที่เก็บข้อมูลทั่วโลกแล้วคลิกขวาที่เก็บกลางและตรวจสอบ"ดัชนีเต็มเปิดใช้งาน"ตัวเลือกแล้วคลิกที่"สร้างดัชนี"

ภาพหน้าจอดัชนีแบบเต็ม


1
คำตอบของคุณเพิ่มอะไรให้กับคำตอบที่ Xiujun Ma ที่ยอมรับก่อนหน้านี้ได้อย่างไร เหมือนกับว่าคุณได้คัดลอกคำตอบนั้น แต่กลับมาใช้ใหม่ แม้แต่ภาพหน้าจอในคำตอบของคุณก็แทบจะเหมือนกับภาพหน้าจอสำหรับคำตอบที่ยอมรับ!
skomisa

@skomisa ฉันยังไม่ได้คัดลอกคำตอบเลย ฉันตอบสิ่งนี้เมื่อฉันประสบปัญหานี้จริงๆ นอกจากนี้ภาพหน้าจอยังมาจากงานของฉัน การคัดลอกและวางคำตอบไม่สมเหตุสมผลกับ stackoverflow และถ้าฉันจะคัดลอกวางฉันจะตอบคำถามหลายพันข้อในตอนนี้ซึ่งฉันยังไม่ได้ตอบ
Hetal Rachh

1
ตกลง แต่คำตอบของคุณเป็นเพียงการทำซ้ำข้อมูลที่ให้ไว้ในคำตอบที่ยอมรับเท่านั้น
skomisa

4

คุณจะได้รับผลลัพธ์นี้หากคุณอยู่ในพร็อกซีขององค์กรและโปรเจ็กต์ใหม่ไม่ได้ชี้ไปที่ไฟล์ settings.xml ที่ถูกต้องพร้อมข้อมูลประจำตัวของพร็อกซี

นอกจากนี้คุณยังสามารถรับสิ่งนี้ได้หากคุณใช้ Maven proxy (เช่น Nexus) และดัชนีในพร็อกซีจะยุ่งเหยิง ฉันไม่รู้วิธีอธิบายวิธีแก้ไข เกลือกกลั้วกับมันหรือโทรหาผู้ที่ตั้งค่าพร็อกซี Maven

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


จริงๆแล้วฉันมีพื้นที่ทำงานสองแห่งเปิดอยู่ (ในสองสุริยุปราคาที่แตกต่างกัน) หนึ่งในนั้นใช้งานได้ไม่ใช่ที่อื่นดังนั้นจึงไม่สามารถเป็นปัญหาการเชื่อมต่อพร็อกซีหรืออินเทอร์เน็ตได้ และไม่มีไฟล์ setting.xml ในพื้นที่ทำงานทั้งสองแห่ง .. ฉันคิดว่าคุณอาจจะพูดถูกเกี่ยวกับดัชนีที่ดาวน์โหลด แต่ฉันไม่รู้ว่าจะดาวน์โหลดได้อย่างไร (ฉันมีปัญหานี้ตั้งแต่เมื่อวานดังนั้นจึงไม่มีประโยชน์ที่จะรอ)
Majid Laissi

1
ฉันใช้ MyEclipse และการตั้งค่าอาจแตกต่างจากของคุณ แต่ฉันมีปุ่มที่คุณเข้าถึงได้ด้วยหน้าต่าง> ค่ากำหนด> MyEclipse> Maven4MyEclipse> การตั้งค่าผู้ใช้ ปุ่มนี้มีชื่อว่า "Reindex" และหากคุณคลิกปุ่มนี้อาจช่วยได้ มีภาพและข้อมูลเพิ่มเติมที่นี่: (คลิก)
Lee Meador

BTW - settings.xml คือไฟล์ที่พบในโฟลเดอร์. m2 ในโฟลเดอร์ผู้ใช้ของคุณ (Windows 7 คือ c: \ Users \ YourName \ .m2, Linux คือ ~ / .m2) และสามารถเก็บข้อมูลส่วนกลางสำหรับพื้นที่ทำงานหลายแห่ง หน้าการตั้งค่าเดียวกันนั้นให้คุณเลือกได้
Lee Meador

ขอขอบคุณสำหรับเวลาของคุณ. ฉันได้ลองโดยไม่มีโชค แต่ Reindex จะทำดัชนีเฉพาะที่เก็บ maven ในเครื่องของฉัน (libs ฉันมีอยู่แล้ว)? และสำหรับไฟล์ settings.xml นั้นไม่มีอยู่ในพื้นที่ทำงานทั้งสองแห่ง (Eclipse การตั้งค่า / การอ้างอิงการตั้งค่าผู้ใช้C:\Users\XX\.m2\settings.xmlและกล่าวว่าUser settings file doesn't exist) และเป็นสิ่งเดียวกันสำหรับพื้นที่ทำงานทั้งสองดังนั้นฉันคิดว่ามันไม่สำคัญ
Majid Laissi

ข้อมูลhttp://maven.apache.org/settings.htmlเกี่ยวกับสิ่งที่อยู่ในไฟล์ ตราบใดที่ไม่มีพร็อกซีไม่มีรหัสผ่านและทุกสิ่งที่คุณต้องการอยู่ใน Maven Central คุณก็สามารถทำได้โดยไม่ต้องมี
Lee Meador

4

สำหรับฉันสำหรับปัญหานี้ทำงานเพื่อ:

  • ลบ ~ / .m2
  • เปิดใช้งาน "Full Index Enabled" ในมุมมองที่เก็บ maven บนที่เก็บส่วนกลาง
  • "สร้างดัชนีใหม่" บนที่เก็บ maven กลาง

หลังจากคราสรีสตาร์ททุกอย่างทำงานได้ดี


3

maven add dependency นั้นมาจากดัชนี maven หากดัชนีเป็นปัจจุบันผลลัพธ์ควรมาจากที่นั่น

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

อีกสิ่งหนึ่งที่ทำให้ฉันรำคาญมากที่สุดคือแม้ฉันจะทำทุกอย่าง แต่ก็ยังไม่แสดงอะไรเลยเมื่อฉันพิมพ์คำว่า "spring" นี่คือที่ที่ฉันทำผิด หากคุณพิมพ์ข้อความเพิ่มเติม "springframework" BOOM ผลลัพธ์จะอยู่ที่นั่น


1

ผมมีปัญหาเดียวกัน. ไม่มีตัวเลือกใดที่แนะนำข้างต้นได้ผลสำหรับฉัน อย่างไรก็ตามฉันพบว่าถ้าฉันบอกว่าเพิ่ม groupid / artifact / version ด้วยตนเองสำหรับ org.springframework.spring-core เวอร์ชัน 4.3.4 รีลีสและบันทึก pom.xml การอ้างอิงจะดาวน์โหลดโดยอัตโนมัติและการค้นหาจะทำงานสำหรับขวดที่มีอยู่แล้ว ในที่เก็บ อย่างไรก็ตามหากตอนนี้ฉันค้นหา org.springframework.spring-context ซึ่งไม่ได้อยู่ในการอ้างอิงปัจจุบันการค้นหานี้ก็ยังใช้ไม่ได้


0

ใช้https://search.maven.org/ด้วยตนเองพร้อมคำนำหน้า fc: เพื่อค้นหาชื่อคลาส ทั้ง Netbeans และ Eclipse ดูเหมือนจะโง่เกินไปที่จะใช้อินเทอร์เฟซการค้นหาและกิกะไบต์ของดัชนีพื้นที่เก็บข้อมูลที่ดาวน์โหลดมาดูเหมือนจะไม่มีข้อมูลคลาสใด ๆ เสียพื้นที่ดิสก์ทั้งหมด เมื่อเร็ว ๆ นี้โครงการ IDE เหล่านั้นได้รับการดูแลอย่างดีฉันหวังว่าพวกเขาจะย้ายการพัฒนาไปยัง GitHub


0

จำเป็นอย่างยิ่งที่จะต้องระบุ Group Id และ Artifact Id เพื่อดาวน์โหลดไฟล์ jar ที่คุณต้องการ หากคุณต้องการค้นหาให้ใช้ *, * สำหรับฟิลด์เหล่านี้

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