นำเข้าการพึ่งพา Maven ใน IntelliJ IDEA


208

ฉันมีคำถามเล็กน้อยเกี่ยวกับ IntelliJ IDEA 11 ฉันเพิ่งนำเข้าโครงการจากการโค่นล้ม - เป็นโครงการ maven แต่ฉันมีปัญหาในการอ้างอิงไลบรารี maven เพื่อให้ฉันไม่สามารถรวมการพึ่งพา maven ทั้งหมดโดยอัตโนมัติ - IDEA แสดงข้อผิดพลาดในการพึ่งพาเฉพาะเมื่อฉันเปิดคลาสนั้น / นั่นคือสิ่งที่ฉันได้รับที่นี่:

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

ดังนั้นฉันต้องการเพิ่มการอ้างอิงทั้งหมดโดยอัตโนมัติ - เป็นไปได้หรือฉันต้องผ่านไฟล์คลาสทั้งหมดเพื่อระบุและเพิ่มการพึ่งพา Maven หรือไม่!

UPDATE: หลังจากทำการแก้ไขบางอย่างฉันพบวิธีแก้ไขปัญหาของฉันในทางใดทางหนึ่ง นั่นคือสิ่งที่ฉันทำ: ป้อนคำอธิบายรูปภาพที่นี่

แต่ฉันคิดว่าเหตุผลมันจะไม่รวมและตรวจสอบการอ้างอิงใหม่ล่วงหน้าหรือไม่! ... มีการตั้งค่าใด ๆ สำหรับสิ่งนี้ใน intelliJ - การส่งออกโดยอัตโนมัติไปยัง classpath หรือไม่!


9
มันดาวน์โหลดการอ้างอิงทั้งหมด แต่ดูเหมือนจะไม่เพิ่มพวกเขาทั้งหมดใน classpath ...
Zaur Guliyev

3
และอีกปัญหาหนึ่งคือการที่แสดงให้เห็น IntelliJ ผมสีแดงข้อผิดพลาดที่ขีดเส้นใต้เฉพาะเมื่อผมเปิดไฟล์ Java ที่ ...
Zaur Guliyev

4
อินสแตนซ์หนึ่งที่คุณได้รับสายสีแดงนี้คือถ้าคุณมีการอ้างอิง SNAPSHOT พร้อมกับตัวจําแนกซึ่งมีการอ้างอิงรุ่นที่ใหม่กว่าโดยไม่มีตัวจําแนก สิ่งนี้ถูกกฎหมายอย่างสมบูรณ์ใน Maven แต่ IntelliJ สับสนในการพยายามหาเส้นทางไปยังไฟล์ทางกายภาพในที่เก็บ Maven ในพื้นที่ของคุณ
RCross

4
FYI สิ่งนี้สามารถเกิดขึ้นได้ใน 15.0.2 เพิ่งเกิดขึ้นกับฉัน ต้องทำให้ไฟล์. iml ของฉันและโฟลเดอร์. ada ของฉันหายไปและนำเข้าอีกครั้ง b / c ที่น่าผิดหวังอย่างเหลือเชื่อฉันใช้เวลา 2 ชั่วโมงในการต่อสู้กับมัน
Kevin Pauli

3
@KevinPauli ไม่จำเป็นต้องลบไฟล์โครงการ IDEA สำหรับสิ่งนั้นคุณสามารถ "นำเข้าโครงการ Maven ทั้งหมด" อีกครั้งภายใต้แท็บ "Maven Projects" เพื่อนำเข้าใหม่ด้วยตนเอง
Zaur Guliyev

คำตอบ:


282

IntelliJ ควรดาวน์โหลดและเพิ่มการอ้างอิงทั้งหมดของคุณไปยัง classpath ของโครงการโดยอัตโนมัติตราบใดที่ POM ของคุณเป็นไปตามมาตรฐานและการพึ่งพาทั้งหมดจะพร้อมใช้งาน

เมื่อนำเข้าโครงการ Maven ลงใน IntelliJ มักจะมีกล่องข้อมูลขึ้นมาถามคุณว่าคุณต้องการกำหนดค่าการนำเข้าอัตโนมัติสำหรับโครงการ Maven หรือไม่ นั่นหมายความว่าหากคุณทำการเปลี่ยนแปลง POM ของคุณการเปลี่ยนแปลงเหล่านั้นจะถูกโหลดโดยอัตโนมัติ

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

หากวิธีนี้ไม่ได้ผลฉันขอแนะนำให้ทำความสะอาดแบบเต็มรูปแบบแล้วเริ่มใหม่อีกครั้ง:

  • ปิดหน้าต่างโครงการของคุณ (และ IntelliJ) และลบ*.imlไฟล์ทั้งหมดและ.ideaโฟลเดอร์ทั้งหมด(ควรมีหนึ่งรายการต่อโมดูล)
  • เรียกใช้mvn clean installจากบรรทัดคำสั่ง
  • นำเข้าโครงการเข้าสู่ IntelliJ อีกครั้งและให้ความสนใจเมื่อขอให้คุณเปิดใช้งานการนำเข้าอัตโนมัติ

อัพเดต IntelliJ 2016 :

การตั้งค่าการนำเข้า Maven โครงการโดยอัตโนมัติถูกย้ายไปที่สร้างดำเนินการปรับใช้> เครื่องมือสร้าง> Maven> นำเข้าในการตั้งค่า IntelliJ ของคุณ


ดังนั้นวิธีการแก้ปัญหาของคุณคือการทำเครื่องหมายอ้างอิงที่ส่งออก? แปลกแฮะ, แปลกนะ, มันแปลก ๆ นะ! ฉันใช้ IntelliJ และ Maven มากและไม่มีโครงการของฉัน (บางโครงการเป็นหลายโครงการ) เปิดใช้งานคุณลักษณะการส่งออก ... Community Edition หรือ Ultimate เป็นอะไร
Alonso Dominguez

1
เป็น Ultimate Edition แต่โครงการที่ฉันนำเข้าสร้างขึ้นบน Eclipse - เพื่อให้. classpath ถูกเปิดใช้งานที่นั่น แต่ IntelliJ ใช้. iml - ดังนั้นฉันคิดว่ามันมีเหตุผลที่จะรวม libs เหล่านี้เป็นครั้งแรกหากโครงการนี้ไม่มี. iml ไฟล์ก่อน .. ?!
Zaur Guliyev

1
โอเค - คุณพยายามที่จะนำเข้ามันเป็นโครงการ Maven แทนที่จะเป็น Eclipse หรือไม่? ฉันไม่ได้เช็คอินไฟล์ที่เกี่ยวข้องกับ IDE ลงในที่เก็บข้อมูลต้นทางของฉันเมื่อทำงานกับโครงการ Maven: ถ้าเป็นโครงการ Maven แล้วกฎ Maven
Alonso Dominguez

2
คุณสามารถเปิดใช้งานการนำเข้าอัตโนมัติในการตั้งค่า / การตั้งค่า เปิดการตั้งค่า / การตั้งค่าและค้นหา "นำเข้าโครงการ Maven โดยอัตโนมัติ" มันอยู่ภายใต้ Build, Execution, Deployment> Build Tools> Maven> การนำเข้า
Seyed Jalal Hosseini

2
@JustinBlank ไม่แปลกใจกับที่ระบุว่านี่เป็นคำตอบจากปี 2012 การตั้งค่ายังคงอยู่ที่นั่นพวกเขาเพิ่งถูกย้ายไปที่อื่น (คำตอบได้รับการปรับปรุง)
Alonso Dominguez

66

แก้ไขก่อน IntelliJ 14

ไฟล์ [เมนู] -> การตั้งค่า -> maven -> การนำเข้าและยกเลิกการเลือก "ใช้ maven3 เพื่อนำเข้าโครงการ"

ref: http://youtrack.jetbrains.com/issue/IDEA-98425 (ซึ่งอาจมีความคิดอื่น ๆ ด้วย)

แก้ไข IntelliJ 15+

เรียกใช้งานอีกครั้งด้วย IntelliJ 15 ในครั้งนี้ซึ่งไม่มีตัวเลือก "ใช้ maven3 เพื่อนำเข้า" อีกต่อไป สาเหตุก็คือว่าบางครั้ง IntelliJ "ไม่ Maven แจงอ้างอิงที่ถูกต้อง" และถ้ามันไม่สามารถแยกคนหนึ่งของพวกเขามีสิทธิจะให้ขึ้นไปบนทั้งหมดของพวกเขาเห็นได้ชัด คุณสามารถบอกได้ว่าเป็นกรณีนี้หรือไม่โดยการเปิดหน้าต่างเครื่องมือ Maven Projects (เมนูมุมมอง -> เครื่องมือ Windows -> โครงการ Maven) จากนั้นขยายโครงการ maven ของคุณและการอ้างอิง หากการอ้างอิงทั้งหมดถูกขีดเส้นใต้ด้วยสีแดง "ฮูสตันเรามีปัญหา" ป้อนคำอธิบายรูปภาพที่นี่

คุณสามารถเห็นความล้มเหลวที่แท้จริงโดยการวางเมาส์เหนือชื่อโครงการเอง

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

ในอินสแตนซ์ของฉันมีข้อความแจ้งว่า "ปัญหา: ไม่มีรุ่นสำหรับ XXX" หรือ "ไม่สามารถอ่านตัวบ่งชี้สำหรับส่วนวัตถุ org.xy.z" อ้างอิง: https://youtrack.jetbrains.com/issue/IDEA-128846 และ https: // youtrack.jetbrains.com/issue/IDEA-152555

ดูเหมือนว่าในกรณีนี้ฉันกำลังจัดการกับ jar ที่ไม่มีไฟล์ pom ที่เกี่ยวข้อง (ใน maven nexus repo ของเราและที่เก็บในเครื่องของฉัน) หากนี่เป็นปัญหาของคุณ "urrent หลีกเลี่ยง: ถ้าคุณไม่จำเป็นต้องใช้คลาสจาก jar นั้นในรหัสของคุณ (ตัวอย่างเช่นการพึ่งพา maven สกรรมกริยา) คุณสามารถหลีกเลี่ยงการแสดงความคิดเห็นจาก pom (ชั่วคราว), โหลด maven project แล้วยกเลิกการคอมเมนต์หลังจากนั้นจุดหนึ่ง IntelliJ "จำ" การพึ่งพาการทำงานเก่าของมันการเพิ่ม maven transitive ไม่รวมเป็นการชั่วคราวอาจทำได้เช่นกันถ้าคุณกำลังเรียกใช้มันจากห่วงโซ่การถ่ายทอด "

อีกสิ่งที่อาจช่วยได้คือใช้ "maven เวอร์ชันที่ใหม่กว่า" ที่รวมอยู่ในชุด 3.0.5 ในการตั้งค่าให้ใช้สิ่งนี้เป็นค่าเริ่มต้นให้ปิดหน้าต่าง Intellij ทั้งหมดของคุณจากนั้นเปิดการตั้งค่า -> บิลด์การเรียกใช้และการปรับใช้ -> บิลด์เครื่องมือ -> maven และเปลี่ยนโฮมไดเร็กทอรี maven คุณควรพูดว่า "สำหรับค่าเริ่มต้น โครงการ "ที่ด้านบนเมื่อคุณปรับเปลี่ยนสิ่งนี้แม้ว่าคุณสามารถปรับได้สำหรับโครงการเฉพาะเช่นกันตราบใดที่คุณ" นำเข้า "หลังจากปรับ

ล้างแคช

การลบโฟลเดอร์แคช intellij ของคุณ (windows: HOMEPATH /. {IntellijIdea, IdeaC} XXX linux ~ / .IdeaIC15) และ / หรือถอนการติดตั้งและติดตั้ง IntelliJ ใหม่เอง นอกจากนี้ยังสามารถทำได้โดยไปที่ File [เมนู] Invalidate Caches / Restart...-> invalidate and restartคลิก นี่จะทำดัชนีโครงการทั้งหมดของคุณใหม่และแก้ไขปัญหาที่ติดตามได้ยากด้วย IntelliJ


2
พอโพสต์อื่น ๆ เกือบทุกโพสต์แนะนำให้ตรวจสอบตัวเลือก "ใช้ Maven3 เพื่อนำเข้าโครงการ" เพื่อแก้ปัญหานี้ในขณะที่การยกเลิกการตรวจสอบจริงมันแก้ปัญหาสำหรับฉัน ทำไม? ฉันไม่รู้ ขอบคุณ!
janhink

3
ในที่สุด v14 ฉันเลือก maven ภายนอกและทุกอย่างกลับไปทำงาน
AlikElzin-kilaka

@ AlikElzin-kilaka การเปลี่ยนไดเรกทอรีบ้าน Maven เป็นบ้าน Maven ภายนอกจะช่วยได้มาก หลังจากฉันอัปเดต IDEA เป็น v14 ultimate ฉันไม่สามารถเปิดโครงการของฉันใน IDEA ได้เนื่องจาก "ไม่พบปลั๊กอิน tomcat6" แต่ฉันสามารถเปิดโครงการโดยใช้คำสั่ง mvn และเปลี่ยนโฮมไดเรกทอรี maven ไปเป็นโปรแกรมภายนอกแก้ไขได้
JerseyGood

ใน IntelliJ 2016.2.1 การปิดใช้งานการนำเข้าอัตโนมัติเปลี่ยนเป็นMaven home directoryสแต็กที่เราใช้ (3.3.9) แก้ไขปัญหาให้ฉัน
Wheeler

1
การเปลี่ยนmaven home directoryจากBundle (Maven 3)เป็นพา ธ ที่ติดตั้ง maven ของฉัน.../maven/3.6.1/libexecทำงานให้ฉัน
Marcelo Xavier

37

เมื่อนำเข้าโครงการให้เลือกpom.xmlแทนไดเรกทอรีโครงการ มันควรจะทำงาน


1
บางครั้งคลิกที่ตัวเลือก "นำเข้าโครงการ maven ทั้งหมด" ใหม่ภายใต้หน้าต่างโครงการ Maven
vikramvi

1
บางทีนี่อาจเป็นวิธีที่ดีที่สุดสะอาดและสะอาด (และมันก็น่าอึดอัดใจเล็กน้อยในระบบ Intellij ไม่ได้ช่วยให้คุณคาดเดาได้)
4477

ทำงานให้ฉันด้วย IntelliJ Community Edition 2019.3.4 ขอบคุณสำหรับวิธีแก้ปัญหาที่ง่ายเช่นนี้ :)
asymmetryFan

22

ลองนำเข้าโครงการอีกครั้งจากแผง Maven Projects ใน IntelliJ IDEA ควรดาวน์โหลดและกำหนดค่าการพึ่งพาทั้งหมดที่กำหนดไว้ในของคุณpom.xmlโดยอัตโนมัติ

หากการดาวน์โหลดไม่ทำงานจาก IDEA ด้วยเหตุผลบางอย่างลองmvn installจากบรรทัดคำสั่งและดูว่าสามารถดึงการอ้างอิงได้หรือไม่

แน่นอนการพึ่งพาที่จำเป็นทั้งหมดและที่เก็บที่กำหนดเองใด ๆ จะต้องกำหนดโดยตรงในpom.xmlไฟล์


14

สำหรับ IntelliJ 2016-2.4 (และฉันเชื่อว่ามีรุ่น ish ใหม่อื่น ๆ ):

ดู> เครื่องมือ Windows> โครงการ Maven

ในแถบเครื่องมือที่เพิ่งเปิดเผยให้เลือกการตั้งค่า Maven (ไอคอนชุดเครื่องมือ)

เมื่อหน้าจอนี้เปิดขึ้นให้ขยายเมนู Maven แล้วคลิก 'การนำเข้า'

คลิกที่นี่ "นำเข้าโครงการ Maven โดยอัตโนมัติ" ตรวจสอบให้แน่ใจด้วยว่าตัวเลือก 'JDK for Importer' ตรงกับรุ่น JDK ที่คุณต้องการใช้

คลิกตกลง ตอนนี้ไปที่การพึ่งพาสีแดงใน pom.xml ของคุณเลือกหลอดไฟสีแดงและคลิก 'อัปเดตดัชนี Maven'


1
การเลือก JDK ที่เหมาะสมสำหรับผู้นำเข้าช่วยฉัน ฉันยังต้องเรียกใช้ความคิด mvn: ความคิดที่สะอาด: ความคิดที่จะปิดปัญหาล่าสุด
Vincent F

9

อะไรช่วยฉัน:

การนำทาง: การตั้งค่า | Build, Execution, Deployment | Maven

ระบุ "Maven home directory" - ที่ที่คุณติดตั้ง Maven


7

หากโมดูล maven บางตัวไม่ได้รวบรวมตรวจสอบว่า pom.xml อยู่ในรายการ "ไฟล์ที่ถูกละเว้น" ใน IntelliJ goto

การตั้งค่า -> การตั้งค่าโครงการ -> maven -> ไฟล์ที่ถูกละเว้น

และตรวจสอบว่า pom.xml ที่เกี่ยวข้องถูกละเว้นหรือไม่


5

เปิดIntelliJ Idea, ไปที่ ไฟล์> การตั้งค่าอื่น ๆ > การตั้งค่าเริ่มต้น ... > Maven (ค่ากำหนด)> การนำเข้า หรือ | Preferences > Maven > Importing

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

คลิกที่เปิดใช้งานการนำเข้าอัตโนมัติในคอนโซล

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


4

เมื่อคุณสร้างโครงการใหม่คุณจะต้องเลือกตัวเลือก:

...
นำเข้าโครงการจากโมเดลภายนอก
สร้างโครงสร้างโครงการ IDEA ผ่านโมเดลภายนอกที่มีอยู่ (Eclipse, Maven ... )
...

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


ตกลง มันเกือบจะแน่นอนว่า OP นำเข้าโครงการผิดไป
kaqqao

4

การนำเข้าการพึ่งพา Maven อาจไม่ทำงานหากคุณนำเข้าเส้นทางเดียวกันหลายครั้ง สิ่งนี้อาจเกิดขึ้นโดยอัตโนมัติหลังจากนำเข้าโครงการ Maven ที่มีอยู่ ฉันไม่สามารถเข้าใจได้ว่าทำไมสิ่งนี้จึงเกิดขึ้นดังนั้นฉันจึงคิดว่ามันเป็นข้อผิดพลาด

ตัวอย่างเช่นถ้าโครงการของฉันคือ

hibernate
  src/main
  src/test

เส้นทางทั้งสามอาจถูกนำเข้าเป็นโหนดบนสุด:

hibernate
src/main
src/test

หากเป็นเช่นนั้นการอ้างอิงนั้นจะถูกต้อง แต่จะไม่ถูกใช้จนกว่าคุณจะลบเส้นทางที่ไม่จำเป็น (ในกรณีนี้src/mainและsrc/test) เมื่อคุณทำเช่นนี้รีเฟรชและคลิกสร้าง> สร้างโครงการใหม่ ความคิดจะรับการอ้างอิง

อาการของปัญหานี้คือ IDEA จะเตือนคุณถึงเส้นทางที่ซ้ำซ้อนเมื่อคุณตรวจสอบไลบรารีด้วยตนเอง (ภาพหน้าจอที่สองในคำถาม)

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


3

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


3

นำเข้าโครงการอีกครั้ง หากคุณติดตั้งปลั๊กอิน maven คุณสามารถใช้สิ่งนี้

คลิกขวาที่โครงการ -> Maven -> นำเข้าใหม่


3

เส้นทางตรวจสอบครั้งแรกที่ระบุไว้สำหรับไฟล์ของผู้ใช้ตั้งค่าในการตั้งค่า -> รูปร่าง, การดำเนินการ, การพัฒนา -> เครื่องมือรูปร่าง -> Maven ฟิลด์ควรมีเส้นทางของsettings.xmlของ maven ของคุณ ด้วย settings.xml ควรมีเส้นทางที่ถูกต้องของที่เก็บระยะไกล


สิ่งนี้ใช้ได้ผลสำหรับฉันในไฟล์ settings.xml รายการสำหรับแท็ก <url> ที่ซ้อนในแท็ก <mirror> นั้นล้าสมัยแล้ว ฉันปรึกษากับเพื่อนร่วมงานเพื่อรับค่าการอัพเดท ฉันทำการเปลี่ยนแปลงเป็น ~ / .m2 / settings.xml ปิด intelliJ และเริ่มต้นใหม่อีกครั้ง เมื่อเริ่มต้นใหม่โดยไม่ทำอะไรเลยขีดสีแดงที่ปรากฏขึ้นในมุมมอง Maven ก็หายไป น่าแปลกที่การอ้างอิงรูทส่วนใหญ่ที่ไฮไลต์อยู่เสมอในรายการ "ไลบรารีภายนอก" ของมุมมองโปรเจ็กต์ทั้งก่อนและหลังฉันทำการแก้ไขนี้
Steve T

3

ฉันมีปัญหาที่คล้ายกันในกรณีของฉันฉันใช้แบบกำหนดเองsettings.xmlซึ่งไม่ได้รับจาก IntelliJ

วิธีแก้ไข:
File > Settings > Build, Execution, Deployment > Maven: User settings file (เลือกที่นี่ settings.xml แบบกำหนดเองของฉัน)


3

ฉันมีปัญหาเดียวกันและลองคำตอบทั้งหมดที่กล่าวถึงที่นี่ไม่มีใครทำงาน

วิธีแก้ไขปัญหาอย่างง่ายคือไปที่โฟลเดอร์โครงการของคุณและลบไฟล์. aide และ. iml ทั้งหมดแล้วเริ่ม IntelliJ ide ใหม่ มันได้ผล. ไม่จำเป็นต้องทำอะไรกับการตั้งค่า


2

ฉันพบปัญหาที่บางส่วนย่อยไม่สามารถแก้ไขได้ใน IntelliJ 2016.3.X ซึ่งอาจได้รับการแก้ไขโดยการเปลี่ยนการMaven home directoryตั้งค่า> รูปร่าง, การดำเนินการปรับใช้> เครื่องมือรูปร่าง> Maven จากไปBundled (Maven 3)/usr/share/maven

หลังจากนั้นการอ้างอิงย่อยทั้งหมดได้รับการแก้ไขเหมือนใน IntelliJ รุ่นก่อนหน้า


2

Maven - การนำเข้าไม่ทำงานสำหรับฉัน ฉันมีโครงการ Spring ใน STS (Eclipse) และโซลูชันของฉันคือการนำเข้าโครงการไปยัง IDEA ดังนี้

1) ไฟล์ - ใหม่ - โครงการจากแหล่งที่มีอยู่ ... - ไดเรกทอรีเลือก - เลือก Eclipse
2) ตั้งค่า Maven autoimport เป็น true ในการตั้งค่า
3) จากนั้นคลิกขวาใน pom.xml และเลือกเพิ่มเป็นโครงการ Maven

หลังจากนี้มันก็นำเข้าทุกอย่าง


2

ฉันมีปัญหาที่คล้ายกันกับ macbook ของฉันเพียงแค่ทำการเปลี่ยนแปลงเล็กน้อยpom.xmlและมันเริ่มดาวน์โหลดการอ้างอิงทั้งหมด:

การอ้างอิงก่อนหน้านี้ถูกเขียนเป็นด้านล่างสำหรับเครื่อง windows ของฉัน:

<dependencies>
 <dependency>
  <groupId>javax.mail</groupId>
  <artifactId>mail</artifactId>
  <version>1.4</version>
</dependency>
</dependencies>

ฉันเพิ่งลบ<dependencies>และ</dependencies>แท็กและมันเริ่มดาวน์โหลดการอ้างอิงทั้งหมด:

<dependency>
  <groupId>javax.mail</groupId>
  <artifactId>mail</artifactId>
  <version>1.4</version>
</dependency>

ฉันไม่แน่ใจว่ามันจะทำงานให้คุณหรือไม่ .. แต่ก็ใช้ได้ดีสำหรับฉัน

ขอบคุณ


1

หากที่มุมล่างขวามีข้อความว่า "2 กระบวนการกำลังทำงาน ... " หรือคล้ายกันคุณอาจต้องรอจนกว่าจะเสร็จสิ้นเนื่องจากอาจต้องใช้เวลาในการดาวน์โหลดไหทั้งหมด


1

ฉันแก้ไขปัญหานี้ด้วยการอัปเดตไฟล์ settings.xml ด้วยการกำหนดค่ามิเรอร์ที่ถูกต้องดูเหมือนว่า Intellij จะพยายามดาวน์โหลด meta-data จากที่เก็บทุกครั้งที่โมดูล maven นำเข้า


1

หักหลังนิดหน่อยเพื่อเพิ่มสิ่งที่ทำงานให้ฉัน:

เข้าไปในMaven Projectsแถบด้านข้างทางด้านขวาของ IDE และตรวจสอบว่าการอ้างอิงของคุณอยู่ในรายการอย่างถูกต้องภายใต้โมดูลของคุณ สมมติว่าพวกเขาเป็นเพียงแค่ขอความคิดที่จะนำเข้าแล้ว

เมื่อฉันทำเช่นนั้นและให้ IDEA โหลดโครงการสำหรับฉันการอ้างอิงทั้งหมดของฉันก็เข้าใจได้อย่างน่าอัศจรรย์

สำหรับการอ้างอิง: นี่คือด้วย IDEA 13.1.2


1

ฉันประสบปัญหาเดียวกันและลองทุกอย่างที่แนะนำซึ่งไม่สามารถแก้ปัญหาได้ฉันใช้ Intellij รุ่น 13.1.3

ในที่สุดหลังจากใช้เวลานานกว่าสองสามชั่วโมงในการพยายามแก้ไขฉันตัดสินใจลองรุ่นที่อัปเกรดแล้วเปิดโครงการในเวอร์ชัน 14.1.4 ซึ่งแก้ไขปัญหาได้ในที่สุด ฉันคิดว่านี่เป็นข้อผิดพลาดที่น่าจะเป็นในรุ่นก่อนหน้า

ฉันหวังว่านี่จะช่วยได้!


1

ฉันสามารถแก้ไขได้โดยลบโมดูลที่ไม่จำเป็นออกจากการตั้งค่าโครงการ ->รายการโมดูล

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

ปรากฎว่าโมดูลเพิ่มเติมเหล่านี้ถูกสร้างขึ้นโดยอัตโนมัติโดย IntelliJ IDEA เมื่อฉันสร้างโครงการ IntelliJ โดยการนำเข้าจากโฟลเดอร์โครงการ (แทนที่จะเปิด pom.xml แทน) จากนั้นหลังจากประกาศโครงการเป็นโครงการ Maven โมดูลที่เหมาะสมถูกสร้างขึ้นและโมดูลที่มีอยู่มีความขัดแย้งกับพวกเขา นอกจากนี้ยังเป็นไปได้ที่จะยกเว้นโมดูลเหล่านั้นในระหว่างการสร้างโครงการ


1

การลบโฟลเดอร์ .idea จากไดเรกทอรีโครงการแล้วนำเข้าโครงการอีกครั้งในฐานะโครงการ Maven เป็นสิ่งที่ใช้ได้ผลสำหรับฉัน


1

ในกรณีของฉันโมดูลหนึ่งถูกละเว้นด้วยเหตุผลบางอย่าง ในการแก้ไขปัญหา: คลิกขวาที่โมดูลที่มีปัญหาและเลือก "ยกเลิกการจัดโครงการ"

ถอนตัวอย่างโครงการ


1

ในกรณีของฉันเส้นทางสำหรับ JAVA ที่ใช้โดย MAVEN ไม่ได้ถูกตั้งค่าเป็น JAVA_HOME ตามที่กำหนดค่าไว้ในเครื่อง ดังนั้นจึงไม่ได้พยายามดาวน์โหลดการอ้างอิง ขั้นตอนที่ฉันติดตามซึ่งแก้ไขปัญหานี้ได้

  1. ตรวจสอบเส้นทาง JAVA, การตั้งค่า >> รูปร่าง >> เครื่องมือรูปร่าง >> การนำเข้า >> JDK สำหรับผู้นำเข้า ชี้ไปที่ JAVA_HOME

  2. mvn clean install -U

    ใช้คำสั่งด้านบนเพื่อบังคับการดาวน์โหลดการอ้างอิง

  3. นำเข้าโครงการ Maven


0

หากทุกอย่างอื่นล้มเหลวให้ตรวจสอบว่าไฟล์ jar ในที่เก็บ. m2 ภายในเครื่องของคุณถูกต้องและไม่เสียหายหรือไม่ ในกรณีของฉันไฟล์นั้นยังไม่ได้ดาวน์โหลดทั้งหมด


0

ใน Maven การพึ่งพาได้รวมไว้สำหรับฉันเมื่อฉันลบส่วนการพึ่งพาการจัดการ XML และเพิ่งมีการพึ่งพาโดยตรงภายใต้ส่วนโครงการ


0

ปัญหาดูเหมือนว่าแม้จะมีรายการการขึ้นต่อกันของคุณใน pom.xml IntelliJ IDEA ไม่ได้สร้างการขึ้นต่อกันเหล่านั้นใหม่เมื่อคุณรันโครงการของคุณ

สิ่งที่ใช้ได้ผลสำหรับฉันคือ:

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

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


0

ฉันสามารถแก้ไขของฉันได้โดยการเพิ่มบรรทัดของโค้ดนี้หลังจาก build แท็กในไฟล์ pom.xml ฉันเปรียบเทียบมันจากโปรเจคที่รันอยู่และค้นพบว่ามันต่างกันตอนนี้ฉันก็ทำได้ดีแล้ว

<repositories>
        <repository>
            <id>spring-snapshots</id>
            <name>Spring Snapshots</name>
            <url>https://repo.spring.io/snapshot</url>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>
        <repository>
            <id>spring-milestones</id>
            <name>Spring Milestones</name>
            <url>https://repo.spring.io/milestone</url>
        </repository>
    </repositories>
    <pluginRepositories>
        <pluginRepository>
            <id>spring-snapshots</id>
            <name>Spring Snapshots</name>
            <url>https://repo.spring.io/snapshot</url>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </pluginRepository>
        <pluginRepository>
            <id>spring-milestones</id>
            <name>Spring Milestones</name>
            <url>https://repo.spring.io/milestone</url>
        </pluginRepository>
    </pluginRepositories>
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.