ใน Maven 2 ฉันจะรู้ได้อย่างไรว่าการพึ่งพาใดมาจากการพึ่งพาสกรรมกริยา


99

ฉันต้องการทราบว่าการอ้างอิงใดที่อธิบายไว้ใน pom.xml ของฉันทำให้เกิดการพึ่งพาสกรรมกริยาในไดเร็กทอรีเป้าหมายของฉัน

เพื่อให้แม่นยำยิ่งขึ้นฉันมีไลบรารี "poi-2.5.1-final-20040804.jar" ในไดเรกทอรี WEB-INF / lib ของฉันและฉันต้องการทราบว่าการอ้างอิงใดใน pom.xml ของฉันทำให้เกิดสิ่งนั้น

คำตอบ:


134

หากต้องการเพิ่มใน @David Crow นี่คือการพึ่งพา: ตัวอย่างต้นไม้จากเว็บไซต์ Maven:

mvn dependency:tree -Dincludes=velocity:velocity

อาจส่งออก

[INFO] [dependency:tree]
[INFO] org.apache.maven.plugins:maven-dependency-plugin:maven-plugin:2.0-alpha-5-SNAPSHOT
[INFO] \- org.apache.maven.doxia:doxia-site-renderer:jar:1.0-alpha-8:compile
[INFO]    \- org.codehaus.plexus:plexus-velocity:jar:1.1.3:compile
[INFO]       \- velocity:velocity:jar:1.4:compile

1
สิ่งนี้ไม่ได้ผลสำหรับฉัน สิ่งที่ฉันได้รับคือข้อผิดพลาดเกี่ยวกับค่า 'เดิม' ที่ไม่รองรับ การรันเวอร์ชันของ @David Crow (กล่าวคือไม่มีค่าสถานะความเร็ว) ทำงานได้ดี
Vlad Schnakovszki



2

คุณสามารถมีรายงานมากมายโดย

ไซต์ mvn

หนึ่งในนั้นคือรายงานการพึ่งพา


1

หากคุณเรียกใช้ maven ด้วยสวิตช์ "-x" มันจะพิมพ์การวินิจฉัยออกมามากมายฉันเดาว่าสามารถเลือกเส้นทางการอ้างอิงที่เกี่ยวข้องได้จากที่นั่น


2
ในความเป็นจริงคำตอบนี้มีประโยชน์ ฉันกำลังเผชิญกับข้อผิดพลาดที่ไม่ได้กำหนดระดับอากาศที่รู้จักกันดีซึ่งเกิดจากการอัปเกรด Maven ของฉันจาก 3.0 เป็น 3.3และคำสั่งต่อไปนี้พบว่าปลั๊กอิน maven อื่นยังคงจัดหาเวอร์ชัน 3.0.5 ของ org.apache.maven: maven-core: mvn -X dependency:tree -Dverbose |grep -C20 sonatype.aether
ekarak

แม้ว่า "-X" (ตัวพิมพ์ใหญ่ชื่อสำรอง "--debug") มักมีประโยชน์ แต่ก็ไม่ได้บอกที่มาของหมายเลขเวอร์ชัน ไม่ได้อยู่ใน Maven 3.6.0 อยู่ดี
toolforger

1

ข้อมูลการอ้างอิงยังรวมอยู่ในรายงานข้อมูลโครงการ / การอ้างอิงหากคุณมี maven สร้างไซต์สำหรับโครงการโดยใช้ไซต์ mvn

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