ฉันจะเพิ่มการพึ่งพา Maven ใน Eclipse ได้อย่างไร


128

ฉันไม่รู้วิธีใช้ Maven เลย ฉันพัฒนามาสองสามปีกับ Eclipse และยังไม่จำเป็นต้องรู้ อย่างไรก็ตามตอนนี้ฉันกำลังดูเอกสารบางอย่างที่แนะนำให้ฉันทำดังต่อไปนี้:

"หากต้องการรวมไว้ในโครงการของคุณเพียงเพิ่มการพึ่งพา Maven นี้ไปยังงานสร้างของคุณ"

<repository>
   <id>jboss</id>
   <url>http://repository.jboss.org/maven2</url>
</repository>

   ...
<dependency>
   <groupId>org.jboss.resteasy</groupId>
   <artifactId>resteasy-jackson-provider</artifactId>
   <version>1.1.GA</version>
</dependency>

ฉันจะทำสิ่งนี้กับโครงการ Eclipse ของฉันได้อย่างไร

โปรดสมมติว่าฉันไม่รู้อะไรเกี่ยวกับ Maven ฉันเพิ่งรู้ว่ามันอาจถูกติดตั้งบนคอมพิวเตอร์ของฉันโดยพิมพ์mvnบนบรรทัดคำสั่ง แต่นั่นเป็นขอบเขตความรู้ของฉันอย่างจริงจัง ฉันยินดีที่จะรู้อะไรเกี่ยวกับ Maven ต่อไปหากมีวิธีที่เทียบเท่าและไม่ใช่ Maven ในการทำตามคำแนะนำเหล่านี้ด้วย Eclipse


2
คุณได้อ่านคู่มือการเริ่มต้น Maven: maven.apache.org/guides/getting-started/index.html
Dan W

4
ไม่เทียบเท่า Maven: ค้นหาไลบรารีทั้งหมดที่คุณต้องการและเพิ่มลงในพา ธ การสร้างของโครงการ (ไดเรกทอรี lib) "ไลบรารีทั้งหมดที่คุณต้องการ" = resteasy-jackson-provider-1.1.GA.jar (2.3.0 เป็นเวอร์ชันปัจจุบัน ... ) พร้อมการพึ่งพาทั้งหมด "การพึ่งพาทั้งหมด" คือสิ่งที่ Maven ทำเพื่อคุณ (ในสถานการณ์นี้) พวกมันคือแจ็คสัน - คอร์ - แอส, แจ็คสัน - แมปเปอร์ - แอส, แจ็คสัน - แจ็กสัน, แจ็คสัน - เอ็กซ์ซี เรียนรู้ Maven เล็กน้อยมันคุ้มค่ากับเวลาอย่างแน่นอน
Hauke ​​Ingmar Schmidt

คุณจะพบข้อมูลเพิ่มเติมเกี่ยวกับ Maven ในMaven:คู่มืออ้างอิงฉบับสมบูรณ์และคุณควรพิจารณาติดตั้งปลั๊กอินEclipse M2E (ก่อนหน้านี้รู้จักกันในชื่อ m2eclipse)
matsev

คำตอบ:


204
  1. ที่แถบเมนูด้านบนให้เปิดหน้าต่าง -> แสดงมุมมอง -> อื่น ๆ
  2. ในหน้าต่าง Show View ให้เปิดMaven -> Maven Repositories

    แสดงมุมมอง - ที่เก็บ Maven

  3. ในหน้าต่างที่ปรากฏขึ้นให้คลิกขวาที่Global Repositoriesแล้วเลือกGo Into

  4. คลิกขวาที่ " central ( http://repo.maven.apache.org/maven2 ) " และเลือก " สร้างดัชนีใหม่ "

    • โปรดทราบว่าการดาวน์โหลดจะใช้เวลาสักครู่
  5. เมื่อการจัดทำดัชนีเสร็จสมบูรณ์ให้คลิกขวาที่โครงการ -> Maven -> เพิ่มการพึ่งพาและเริ่มพิมพ์ชื่อโครงการที่คุณต้องการนำเข้า (เช่น "hibernate")

    • ผลลัพธ์การค้นหาจะป้อนอัตโนมัติในช่อง "ผลลัพธ์การค้นหา" ด้านล่าง

156
Legend มีมันยังคงสร้างดัชนีขึ้นมาใหม่

25
คำแนะนำ: Eclipse (อย่างน้อยรุ่นล่าสุด ณ เดือนพฤษภาคม 2559) ล็อคขึ้นอย่างรวดเร็วในขณะที่สร้างดัชนีพื้นที่เก็บข้อมูล Maven กลางอีกครั้ง และสถานะค้างที่ "0%" เป็นเวลาห้านาทีแล้ว อย่าทำแผนใด ๆ
Saustrup

7
ประณามฉันคิดถึง<insert-name-of-previously-considered-to-be-worst-package-manager-ever-here>
Mark K Cowan

12
ฉันโง่พอที่จะลองเปิดโฟลเดอร์กลาง ... อย่าทำอย่างนั้น ...
ไม่ได้รัก

15
หมายเหตุ: หากนี่ไม่ใช่โครงการ Maven ก่อนขั้นตอนที่ 5 คุณต้องคลิกขวาที่โครงการ -> กำหนดค่า -> แปลงเป็นโครงการ Maven จากนั้นขั้นตอนที่ 5 จะใช้งานได้
cliff2310

26

ในความเป็นจริงเมื่อคุณเปิด pom.xml คุณจะเห็น 5 แท็บที่ด้านล่าง คลิก pom.xml และคุณสามารถพิมพ์สิ่งที่คุณต้องการได้

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


ช่วยฉันออกครั้งใหญ่ ไม่ได้สังเกตเห็น 5 แท็บก่อนหน้านี้
M. Smith

2
Eclipse ยังไม่รู้จักการพึ่งพาจาก pom.xml ของฉันในรหัสของฉัน เมื่อฉันใช้ IntelliJ มันจะดาวน์โหลดโดยอัตโนมัติและตั้งค่าให้เสร็จสมบูรณ์รหัสไม่คราสทำเช่นนี้?
Cas Eliëns

ถ้าคุณรู้อยู่แล้วว่ารายละเอียดของการพึ่งพาของคุณ (กลุ่ม id, id ของสิ่งประดิษฐ์รุ่น) แล้วนี้เป็นมากเร็วกว่าการดาวน์โหลดทางอินเทอร์เน็ตเพียงที่จะรวมmy-favorite-library.jarในโครงการของคุณ
Christopher Schultz

10

คุณต้องใช้ปลั๊กอิน Maven สำหรับ Eclipse เพื่อทำสิ่งนี้อย่างถูกต้อง M2Eปลั๊กอินสร้างเป็นรุ่นล่าสุดของ Eclipse และไม่ดีถ้างานไม่สมบูรณ์แบบของการบูรณาการเข้า Maven ของ IDE คุณจะต้องสร้างโครงการของคุณเป็น 'Maven Project' หรือคุณสามารถนำเข้า Maven POM ที่มีอยู่ในพื้นที่ทำงานของคุณเพื่อสร้างโครงการโดยอัตโนมัติ เมื่อคุณมีโครงการ Maven ของคุณใน IDE เพียงเปิด POM และเพิ่มการอ้างอิงของคุณ

ตอนนี้ถ้าคุณไม่มีปลั๊กอิน Maven สำหรับ Eclipse คุณจะต้องรับ jar สำหรับการอ้างอิงที่เป็นปัญหาและเพิ่มด้วยตนเองเป็นการอ้างอิง classpath ในโครงการของคุณ สิ่งนี้อาจไม่เป็นที่พอใจเนื่องจากคุณจะต้องไม่ใช่แค่ระดับสูงสุดของ JAR แต่เป็นการพึ่งพาทั้งหมดด้วยเช่นกัน

โดยทั่วไปฉันขอแนะนำให้คุณรับ Maven plugin ที่เหมาะสมสำหรับ Eclipse และปล่อยให้จัดการการพึ่งพาสำหรับคุณ


2
ขอบคุณสำหรับคำตอบ. ฉันมีโครงการที่มีไฟล์ 1,000 ไฟล์อยู่แล้ว - มีวิธีเพิ่มการสนับสนุน maven แทนที่จะเริ่มจากศูนย์หรือไม่ ฉันมีเวอร์ชันล่าสุดของ Eclipse
Riley Lark

3
ด้วยเวอร์ชันล่าสุดของ Eclipse และ m2e คุณสามารถคลิกขวาที่โปรเจ็กต์ Java ปกติและเปิดใช้งานการจัดการการพึ่งพา สิ่งนี้จะสร้าง pom.xml สำหรับโครงการในขณะที่ปล่อยให้โครงสร้างยังคงอยู่
การรับรู้

7

เปิดไฟล์ pom.xml

ภายใต้projectแท็กเพิ่ม<dependencies>เป็นแท็กอื่นและ google สำหรับการอ้างอิง Maven ฉันใช้สิ่งนี้เพื่อค้นหา

ดังนั้นหลังจากได้รับการอ้างอิงสร้างแท็กอื่นdependencyภายใน<dependencies>แท็ก

ดังนั้นในที่สุดมันจะออกมาเป็นแบบนี้

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>doc-examples</groupId>
  <artifactId>lambda-java-example</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <name>lambda-java-example</name>
  <dependencies>
      <!-- https://mvnrepository.com/artifact/com.amazonaws/aws-lambda-java-core -->
    <dependency>
        <groupId>com.amazonaws</groupId>
        <artifactId>aws-lambda-java-core</artifactId>
        <version>1.0.0</version>
    </dependency>
  </dependencies>
</project>

หวังว่ามันจะช่วย


2

ฉันได้เผชิญกับปัญหาที่คล้ายกันและแก้ไขโดยการคัดลอกไฟล์ Jar ที่หายไปในเส้นทาง.

ตัวอย่างเช่น: หากคุณเห็นข้อความแสดงข้อผิดพลาดMissing artifact tws:axis-client:jar:8.7คุณต้องดาวน์โหลดไฟล์ "axis-client-8.7.jar" และวางตำแหน่งเดียวกันในตำแหน่งด้านล่างเพื่อแก้ไขปัญหา

C: \ Users \ UsernameXXX.m2 \ repository \ tws \ axis-client \ 8.7 (วาง axis-client-8.7.jar)

ในที่สุดคลิกขวาที่โครงการ -> Maven-> อัปเดตโครงการ ... นั่นแหล่ะ

การเข้ารหัสที่มีความสุข


ขอบคุณ! นี่ไม่ใช่ปัญหาเฉพาะของฉัน แต่มันช่วยฉันแก้ปัญหาได้ ในกรณีของฉันขวดของฉันอยู่ในตำแหน่งที่ถูกต้อง แต่เส้นทางผิดเล็กน้อย
กัปตัน Fantastic

-1

ฉันประสบปัญหาเดียวกันกับการพึ่งพา Maven เช่น: โชคไม่ดีที่การพึ่งพา Maven ของคุณถูกลบออกจาก buildpath ของคุณคุณจะได้รับข้อยกเว้นมากมายหากคุณทำตามขั้นตอนด้านล่างคุณสามารถแก้ไขปัญหานี้ได้อย่างง่ายดาย

 คลิกขวาที่โครงการ >> maven >> updateProject >> selectProject >> OK

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