ปลั๊กอินและเป้าหมายของ Maven
ปรับแต่งการสร้างโปรเจกต์
ปลั๊กอินและเป้าหมายของ Maven เป็นบทเรียน Java Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Java Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Java Academy มีบทเรียนทั้งหมด 4 บทเรียน
ปลั๊กอินและเป้าหมายของ Maven
Maven เองแทบไม่ทำงานใด ๆ — งานจริงทั้งหมดดำเนินการโดย ปลั๊กอิน ปลั๊กอินจะเพิ่ม เป้าหมาย และเป้าหมายจะผูกกับระยะต่าง ๆ ของวงจรชีวิต บทเรียนนี้จะแสดงวิธีใช้ปลั๊กอินเพื่อปรับแต่งการสร้าง
ปลั๊กอินกับเป้าหมาย
ปลั๊กอิน คือชุดความสามารถที่เกี่ยวข้องกันซึ่งรวมเป็นแพ็กเกจ ส่วน เป้าหมาย คืองานเฉพาะอย่างหนึ่งภายในปลั๊กอิน ตัวอย่างเช่นปลั๊กอินคอมไพเลอร์มีเป้าหมาย compile และ testCompile
พิกัดเป้าหมาย
คุณสามารถเรียกใช้เป้าหมายโดยตรงในรูปแบบ plugin:goal เช่น mvn compiler:compile หรือ mvn surefire:test โดยปกติเป้าหมายจะทำงานโดยอัตโนมัติ เนื่องจากผูกอยู่กับระยะต่าง ๆ
การผูกกับระยะ
ประเภทการจัดแพ็กเกจเริ่มต้นจะผูกปลั๊กอินมาตรฐานไว้กับระยะต่าง ๆ ล่วงหน้า สำหรับโครงการ jar เป้าหมาย compile ของปลั๊กอินคอมไพเลอร์จะผูกกับระยะ compile และเป้าหมาย test ของปลั๊กอิน Surefire จะผูกกับ test นี่จึงเป็นเหตุผลที่ mvn test ทำงานได้ทันที
การตั้งค่าคอมไพเลอร์
คุณตั้งค่าปลั๊กอินภายใน <build><plugins> ในที่นี้เรากำหนดระดับรุ่นของ Java เพื่อให้คอมไพเลอร์มุ่งเป้าไปยังเวอร์ชันที่ระบุ
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.13.0</version>
<configuration>
<release>21</release>
</configuration>
</plugin>
</plugins>
</build>ปลั๊กอิน Surefire
Surefire เรียกใช้การทดสอบหน่วยระหว่างระยะ test คุณสามารถกำหนดว่าจะรวมการทดสอบใดบ้าง จำนวนงานที่ทำพร้อมกัน และอาร์กิวเมนต์ของ JVM ได้ ส่วน Failsafe ซึ่งเป็นปลั๊กอินที่ทำงานคู่กัน จะเรียกใช้การทดสอบการผสานรวมในระยะ verify
การผูกการทำงานเพิ่มเติม
บล็อก <execution> จะผูกเป้าหมายกับระยะหนึ่งอย่างชัดเจน และอาจมีการตั้งค่าของตนเองได้ วิธีนี้ใช้สำหรับเพิ่มงานพิเศษ เช่น การสร้างโค้ดก่อนการคอมไพล์
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<id>print-banner</id>
<phase>generate-sources</phase>
<goals><goal>run</goal></goals>
</execution>
</executions>
</plugin>การสร้าง JAR แบบรวมทุกอย่าง
JAR เริ่มต้นจะไม่รวมสิ่งพึ่งพา ปลั๊กอิน Shade หรือปลั๊กอิน Assembly จะรวมทุกอย่างไว้ใน uber-jar เดียวที่เรียกใช้ได้ โดยผูกเป้าหมายกับระยะ package
ปลั๊กอิน Exec
ปลั๊กอิน Exec ช่วยให้คุณเรียกใช้แอปพลิเคชันจาก Maven ด้วย mvn exec:java โดยระบุคลาสหลัก เหมาะสำหรับการเรียกใช้แบบรวดเร็วโดยไม่ต้องจัดแพ็กเกจ
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<configuration>
<mainClass>com.example.App</mainClass>
</configuration>
</plugin>การจัดการปลั๊กอิน
ในการสร้างแบบหลายโมดูล <pluginManagement> ใน POM หลักจะกำหนดเวอร์ชันปลั๊กอินและการตั้งค่าที่ใช้ร่วมกันแบบตายตัว จากนั้นโมดูลลูกจะอ้างอิงปลั๊กอินโดยไม่ต้องระบุเวอร์ชันซ้ำ ทำให้การสร้างมีความสอดคล้องกัน
การค้นหาการตั้งค่า
ใช้ mvn help:describe -Dplugin=compiler เพื่อแสดงรายการเป้าหมายและพารามิเตอร์ของปลั๊กอิน วิธีนี้เป็นวิธีที่เร็วที่สุดในการเรียนรู้ว่าปลั๊กอินมีตัวเลือกใดให้ปรับได้ โดยไม่ต้องออกจากเทอร์มินัล
ตรวจสอบความเข้าใจ
ทดสอบความเข้าใจของคุณเกี่ยวกับปลั๊กอินและเป้าหมาย
สรุป
คุณได้เรียนรู้วิธีทำงานของปลั๊กอิน Maven:
- งานสร้างจริงทั้งหมดดำเนินการโดย ปลั๊กอิน ซึ่งเพิ่ม เป้าหมาย
- เป้าหมายจะ ผูกกับระยะต่าง ๆ ของวงจรชีวิต ทำให้ระยะมาตรฐานทำงานได้ทันที
- ตั้งค่าปลั๊กอินใน
<build><plugins>และเพิ่ม การทำงาน สำหรับการผูกเพิ่มเติม - Shade และ Assembly สร้าง JAR แบบรวมทุกอย่าง Exec เรียกใช้แอป และ Surefire กับ Failsafe เรียกใช้การทดสอบ
mvn help:describeแสดงเป้าหมายและพารามิเตอร์ของปลั๊กอิน
คำถามที่พบบ่อย
บทเรียน “ปลั๊กอินและเป้าหมายของ Maven” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “ปลั๊กอินและเป้าหมายของ Maven” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Java Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Java Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “ปลั๊กอินและเป้าหมายของ Maven”
ปรับแต่งการสร้างโปรเจกต์ คุณปฏิบัติ Java Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Java Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Java Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน
บทเรียน “ปลั๊กอินและเป้าหมายของ Maven” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Java Academy นี้ได้ไหม
ได้ บทเรียน Java Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- โครงสร้างโปรเจกต์ Maven
- ปลั๊กอินและเป้าหมายของ Maven
- พื้นฐาน Gradle
- การเลือกเครื่องมือสร้างโปรเจกต์