สมัครเรียนโทร. 085-350-7540 , 084-88-00-255 , ntprintf@gmail.com

Apache Maven

Maven การตั้งค่าและใช้งานพื้นฐาน - ติดตั้ง Maven Maven การตั้งค่าและใช้งานพื้นฐาน - สร้างโปรเจกต์ Maven ใหม่ Maven การตั้งค่าและใช้งานพื้นฐาน - สร้างไฟล์ pom.xml Maven การตั้งค่าและใช้งานพื้นฐาน - การเพิ่ม Dependencies ใน pom.xml Maven การตั้งค่าและใช้งานพื้นฐาน - การ Build โปรเจกต์ Maven Maven การตั้งค่าและใช้งานพื้นฐาน - การใช้ Plugins ใน pom.xml Maven การตั้งค่าและใช้งานพื้นฐาน - การ Clean โปรเจกต์ Maven Maven การตั้งค่าและใช้งานพื้นฐาน - การสร้างไฟล์ JAR หรือ WAR Maven การตั้งค่าและใช้งานพื้นฐาน - การรันโปรเจกต์ Maven Maven การตั้งค่าและใช้งานพื้นฐาน - การรัน Unit Test Maven การจัดการ Dependencies และ Plugins - การตั้งค่า Dependency Scope Maven การจัดการ Dependencies และ Plugins - การใช้ Profiles ใน pom.xml Maven การจัดการ Dependencies และ Plugins - การตั้งค่า Repository ภายนอก Maven การจัดการ Dependencies และ Plugins - การเพิ่ม Plugins สำหรับการทำงานพิเศษ Maven การจัดการ Dependencies และ Plugins - การจัดการ Multi-Module Project Maven การจัดการ Dependencies และ Plugins - การใช้ Dependency Management ในโปรเจกต์ Multi-Module Maven การจัดการ Dependencies และ Plugins - การจัดการ Dependency Version ด้วย BOM (Bill of Materials) Maven การจัดการ Dependencies และ Plugins - การ Exclude Dependencies ที่ไม่ต้องการ Maven การจัดการ Dependencies และ Plugins - การทำ Dependency Resolution Maven การจัดการ Dependencies และ Plugins - การสร้าง Repository Local Cache Maven การทดสอบและการตั้งค่าโปรไฟล์ - การสร้าง Custom Maven Plugin Maven การทดสอบและการตั้งค่าโปรไฟล์ - การสร้าง Site รายงานของโปรเจกต์ Maven การทดสอบและการตั้งค่าโปรไฟล์ - การสร้าง Javadoc อัตโนมัติ Maven การทดสอบและการตั้งค่าโปรไฟล์ - การทำ Continuous Integration (CI) ด้วย Jenkins และ Maven Maven การทดสอบและการตั้งค่าโปรไฟล์ - การใช้ Maven Assembly Plugin เพื่อสร้างไฟล์ ZIP หรือ TAR Maven การทดสอบและการตั้งค่าโปรไฟล์ - การทำ Release ด้วย Maven Maven การทดสอบและการตั้งค่าโปรไฟล์ - การตั้งค่า Maven เพื่อทำงานกับ Proxy Server Maven การทดสอบและการตั้งค่าโปรไฟล์ - การใช้งาน Maven กับ Docker Maven การทดสอบและการตั้งค่าโปรไฟล์ - การตั้งค่า Maven Wrapper Maven การทดสอบและการตั้งค่าโปรไฟล์ - การใช้ Lifecycle Phases ของ Maven

Maven การจัดการ Dependencies และ Plugins - การ Exclude Dependencies ที่ไม่ต้องการ

 

ในโลกของการพัฒนาโปรแกรมสมัยใหม่ การจัดการ dependencies เป็นหนึ่งในกระบวนการที่ซับซ้อนและยังคงเป็นการท้าทายสำหรับนักพัฒนา หลายคนอาจคุ้นเคยกับ Maven ซึ่งเป็นเครื่องมือที่ช่วยให้การจัดการ dependencies เป็นเรื่องง่ายขึ้น โดยอัตโนมัติสามารถดึง packages ที่จำเป็นจาก repository ต่างๆ มาใช้ในโปรเจคของเราได้อย่างสะดวกสบาย อย่างไรก็ตาม ก็ต้องพบกับปัญหาด้าน dependencies ที่เราไม่ได้ต้องการเช่นเดียวกัน วันนี้เราจะมาพูดถึงวิธีการ Exclude dependencies ที่ไม่ต้องการในการใช้ Maven กัน

 

Maven คืออะไร?

Maven เป็นเครื่องมือที่ช่วยในการ build และจัดการโปรเจค ซึ่งเน้นที่หลักการ project object model (POM) ใช้งานได้ดีในโปรเจคที่สร้างด้วยภาษา Java เมื่อรู้จัก Maven แล้ว การเรียนรู้การจัดการ dependencies และ plugins ผ่านไฟล์ POM.xml จึงเป็นหัวใจของการทำงาน

 

การจัดการ Dependencies ใน Maven

Dependencies คือการอ้างอิงที่โปรเจคของเราต้องการเพื่อให้สามารถทำงานได้ โดย Maven จะช่วยดึง dependencies ที่จำเป็นจาก central repository มาให้โดยอัตโนมัติในเวลา build แต่ทว่า บางครั้ง dependencies เหล่านี้มีการอ้างอิงถึง library อื่น ๆ อีกต่อหนึ่ง ซึ่งอาจไม่ต้องการในโปรเจคของเรา

ตัวอย่าง:


<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
        <version>2.6.1</version>
    </dependency>
</dependencies>

ในตัวอย่างนี้ เราใช้ Spring Boot แต่ Spring Boot เองก็มี dependencies หลายตัวที่อาจไม่ได้ใช้งานทั้งหมดในโปรเจค เช่น logging frameworks ที่เราอาจต้องการเปลี่ยนไปใช้ตัวอื่นแทน

 

การ Exclude Dependencies ที่ไม่ต้องการ

การ Exclude Dependencies เป็นการให้ Maven ละเว้นการดึง library ที่เราไม่ต้องการเข้ามาในการ build ของเรา ซึ่งเราสามารถระบุขึ้นใน POM.xml ผ่านการตั้งค่า exclusion ได้อย่างง่ายดาย

ตัวอย่างการ Exclude dependencies:


<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
    <version>2.6.1</version>
    <exclusions>
        <exclusion>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-logging</artifactId>
        </exclusion>
    </exclusions>
</dependency>

ในกรณีนี้ เราได้บอกให้ Maven ไม่ดึง `spring-boot-starter-logging` เข้ามาในโปรเจคของเรา ซึ่งช่วยลดขนาดและความซับซ้อนในการจัดการ dependencies

 

การจัดการ Plugins ใน Maven

นอกจาก dependencies แล้ว Maven ยังทำงานร่วมกับ plugins ที่หลากหลายเพื่อช่วยในการ build, testing, และ deployment ตัวอย่าง plugin ที่ใช้บ่อยมี maven-compiler-plugin สำหรับการ compile โค้ด

ตัวอย่างการใช้ plugin:


<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.8.1</version>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
            </configuration>
        </plugin>
    </plugins>
</build>

การตั้งค่า plugins ให้เป็นไปตามความต้องการถือเป็นทักษะสำคัญที่ช่วยจัดการการ build ของเราได้อย่างมีประสิทธิภาพ

 

ความสำคัญของการจัดการ Dependencies และ Plugins อย่างมีระเบียบ

การจัดการ Dependencies และ Plugins อย่างเหมาะสมช่วยลดปัญหาการขัดข้องของ library ซึ่งอาจส่งผลกระทบต่อความเสถียรและประสิทธิภาพของโปรเจค นอกจากนี้ ยังส่งผลต่อความรวดเร็วในการ deploy และการ maintain โปรเจคในระยะยาวอีกด้วย

การเรียนรู้ที่จะจัดการ dependencies อย่างถูกต้องนั้นเป็นทักษะที่เด่นชัดในนักพัฒนาที่ชำนาญ และที่ EPT เรามีคอร์สที่ช่วยให้นักพัฒนาได้เรียนรู้ทักษะสำคัญเหล่านี้พร้อมคำแนะนำจากผู้เชี่ยวชาญในแวดวงการพัฒนาซอฟต์แวร์

การเข้าใจการ Exclude Dependencies ที่ไม่ต้องการใน Maven เป็นเพียงหนึ่งในหลาย ๆ เทคนิคที่นักพัฒนาโปรแกรมสมัยใหม่ควรจะรู้ ซึ่งจะทำให้การจัดการโปรเจคมีประสิทธิภาพมากยิ่งขึ้น หากคุณต้องการขยายความรู้เพิ่มเติมในด้านนี้ การศึกษาและปฏิบัติจริงเป็นทางเลือกที่ดีที่สุด

 

 

หมายเหตุ: ข้อมูลในบทความนี้อาจจะผิด โปรดตรวจสอบความถูกต้องของบทความอีกครั้งหนึ่ง บทความนี้ไม่สามารถนำไปใช้อ้างอิงใด ๆ ได้ ทาง EPT ไม่ขอยืนยันความถูกต้อง และไม่ขอรับผิดชอบต่อความเสียหายใดที่เกิดจากบทความชุดนี้ทั้งทางทรัพย์สิน ร่างกาย หรือจิตใจของผู้อ่านและผู้เกี่ยวข้อง

หากเจอข้อผิดพลาด หรือต้องการพูดคุย ติดต่อได้ที่ https://m.me/expert.Programming.Tutor/


Tag ที่น่าสนใจ: java c# vb.net python c c++ machine_learning web database oop cloud aws ios android


บทความนี้อาจจะมีที่ผิด กรุณาตรวจสอบก่อนใช้

หากมีข้อผิดพลาด/ต้องการพูดคุยเพิ่มเติมเกี่ยวกับบทความนี้ กรุณาแจ้งที่ http://m.me/Expert.Programming.Tutor

ไม่อยากอ่าน Tutorial อยากมาเรียนเลยทำอย่างไร?

สมัครเรียน ONLINE ได้ทันทีที่ https://elearn.expert-programming-tutor.com

หรือติดต่อ

085-350-7540 (DTAC)
084-88-00-255 (AIS)
026-111-618
หรือทาง EMAIL: NTPRINTF@GMAIL.COM

แผนที่ ที่ตั้งของอาคารของเรา

แผนผังการเรียนเขียนโปรแกรม

Link อื่นๆ

Allow sites to save and read cookie data.
Cookies are small pieces of data created by sites you visit. They make your online experience easier by saving browsing information. We use cookies to improve your experience on our website. By browsing this website, you agree to our use of cookies.

Copyright (c) 2013 expert-programming-tutor.com. All rights reserved. | 085-350-7540 | 084-88-00-255 | ntprintf@gmail.com

ติดต่อเราได้ที่

085-350-7540 (DTAC)
084-88-00-255 (AIS)
026-111-618
หรือทาง EMAIL: NTPRINTF@GMAIL.COM
แผนที่ ที่ตั้งของอาคารของเรา