ฉันเพิ่งเริ่มใช้ Maven และฉันได้รับคำสั่งให้ทำmvn install
ในไดเรกทอรีเฉพาะ
สิ่งที่ไม่mvn install
ทำว่า?
ฉันคิดว่ามันค้นหาpom.xml
ในโฟลเดอร์ปัจจุบันและเริ่มทำตามคำแนะนำที่ระบุในไฟล์นั้น ถูกต้องไหม
ฉันเพิ่งเริ่มใช้ Maven และฉันได้รับคำสั่งให้ทำmvn install
ในไดเรกทอรีเฉพาะ
สิ่งที่ไม่mvn install
ทำว่า?
ฉันคิดว่ามันค้นหาpom.xml
ในโฟลเดอร์ปัจจุบันและเริ่มทำตามคำแนะนำที่ระบุในไฟล์นั้น ถูกต้องไหม
คำตอบ:
ดังที่คุณอาจทราบ Maven เป็นเครื่องมือสร้างอัตโนมัติที่ Apache จัดทำซึ่งทำหน้าที่มากกว่าการจัดการการพึ่งพา เราสามารถทำให้มันเป็นเพียร์ของ Ant และ Makefile ซึ่งดาวน์โหลดการอ้างอิงทั้งหมดที่จำเป็น
ในmvn install
มันเฟรมต้นไม้พึ่งพาขึ้นอยู่กับการกำหนดค่าโครงการpom.xml
ในโครงการย่อยทั้งหมดภายใต้ super pom.xml
(รูท POM) และดาวน์โหลด / รวบรวมส่วนประกอบที่จำเป็นทั้งหมดในไดเรกทอรีที่เรียกว่า.m2
ภายใต้โฟลเดอร์ของผู้ใช้ การอ้างอิงเหล่านี้จะต้องได้รับการแก้ไขสำหรับโครงการที่จะสร้างโดยไม่มีข้อผิดพลาดและmvn install
เป็นยูทิลิตี้หนึ่งที่สามารถดาวน์โหลดการพึ่งพาส่วนใหญ่ได้
นอกจากนี้ยังมีสิ่งอำนวยความสะดวกอื่น ๆ ภายใน Maven dependency:resolve
ซึ่งสามารถใช้แยกต่างหากในกรณีเฉพาะใด ๆ วงจรชีวิตการสร้างของ mvn มีดังนี้: LifeCycle Bindings
process-resources
compile
process-test-resources
test-compile
test
package
install
deploy
ขั้นตอนการทดสอบของ mvn นี้สามารถละเว้นได้โดยใช้แฟล็-DskipTests=true
ก
คุณเคยดูเอกสาร Maven ใด ๆ ตัวอย่างเช่นเอกสารติดตั้ง mavenหรือไม่
รุ่น Nutshell: มันจะสร้างโครงการและติดตั้งในพื้นที่เก็บข้อมูลท้องถิ่นของคุณ
มันจะเรียกใช้เป้าหมายทั้งหมดของปลั๊กอินที่กำหนดค่าทั้งหมดซึ่งเกี่ยวข้องกับขั้นตอนใด ๆ ของวงจรชีวิตเริ่มต้นจนถึงขั้นตอน "ติดตั้ง":
https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html#Lifecycle_Reference
install:install
เป้าหมายที่ให้บริการโดย«Apache Maven ติดตั้งปลั๊กอิน»:
Apache Maven ติดตั้งปลั๊กอิน
ติดตั้งปลั๊กอินจะใช้ในระหว่างขั้นตอนการติดตั้งเพื่อเพิ่มสิ่งประดิษฐ์ลงในพื้นที่เก็บข้อมูลท้องถิ่น ติดตั้งปลั๊กอินใช้ข้อมูลใน POM นี้ (
groupId
,artifactId
,version
) เพื่อตรวจสอบสถานที่ที่เหมาะสมสำหรับสิ่งประดิษฐ์ภายในพื้นที่เก็บข้อมูลท้องถิ่นที่เก็บโลคัลคือแคชโลคัลที่เก็บสิ่งประดิษฐ์ทั้งหมดที่จำเป็นสำหรับบิลด์ โดยค่าเริ่มต้นจะอยู่ภายในไดเรกทอรีหลักของผู้ใช้ (
~/.m2/repository
) แต่สามารถกำหนดค่าตำแหน่งในการ~/.m2/settings.xml
ใช้<localRepository>
องค์ประกอบ
ต้องบอกว่าเป้าหมายที่แน่นอน:
install:install
ใช้เพื่อติดตั้งสิ่งประดิษฐ์หลักของโครงการโดยอัตโนมัติ (JAR, WAR หรือ EAR), POM ของมันและสิ่งที่แนบมาใด ๆ (แหล่งที่มา, javadoc, ฯลฯ ) ที่ผลิตโดยโครงการเฉพาะ
สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับเป้าหมายโปรดดูที่Apache Maven Install Plugin - ติดตั้ง:หน้าติดตั้ง
สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับการสร้างวงจรชีวิตทั่วไปและที่สถานที่เป้าหมายที่มีอยู่ในการสร้างวงจรชีวิต, โปรดดูที่Maven - รู้เบื้องต้นเกี่ยวกับการสร้างวงจรชีวิตหน้า
คำตอบสั้น ๆ
mvn ติดตั้ง
- เพิ่มส่วนทั้งหมด (การอ้างอิง) ที่ระบุในpomลงในที่ เก็บโลคัล (จากแหล่งรีโมต)
-DskipTests=true
เป็นรูปแบบย่อของ -Dmaven.test.skip=true
ทำให้เกิดการเปลี่ยนแปลงในSetting.xmlในของคุณ.m2โฟลเดอร์ คุณสามารถใช้ลิงก์ไปยัง repo ภายในเครื่องเพื่อไม่ให้ดาวน์โหลดครั้งเดียวไม่ควรดาวน์โหลดซ้ำแล้วซ้ำอีก
<url>file://C:/Users/admin/.m2/repository</url>
</repository>
mvn ติดตั้งงานหลักคือ1) ดาวน์โหลดการอ้างอิงและ2) สร้างโครงการ
ในขณะที่งานที่ 1ได้รับการดูแลโดย ID เช่น intellij ในปัจจุบัน (พวกเขาดาวน์โหลดสำหรับการพึ่งพาใด ๆ ที่ POM)
MVN ติดตั้ง majorly ตอนนี้ใช้สำหรับงานที่ 2