ที่นี่เราสรุปวิธีการต่าง ๆ ในการใช้ไอเดียในการบรรจุแพ็คเกจโถ คุณสามารถอ้างถึงแบบฟอร์มต่อไปนี้สำหรับโครงการในอนาคตเพื่อจัดแพ็คเกจแพ็คเกจขวด:
ใช้วิธีบรรจุภัณฑ์ของ Idea:
เปิด ไฟล์ของ Idea -> โครงสร้างโครงการ และป้อนหน้าการกำหนดค่าโครงการ ดังที่แสดงในรูปด้านล่าง:
คลิก สิ่งประดิษฐ์ เพื่อเข้าสู่หน้าการกำหนดค่าสิ่งประดิษฐ์คลิก + และเลือกตัวเลือกในรูปด้านล่าง
ป้อนหน้าสร้าง jar จากโมดูลและกำหนดค่าตามที่แสดงในรูปด้านล่าง
หลังจากคลิก ตกลง อินเทอร์เฟซต่อไปนี้จะปรากฏขึ้น คลิกขวา <เอาท์พุทรูท> คลิก สร้างไดเรกทอรี สร้าง libs และใส่ขวดของบุคคลที่สามทั้งหมดลงในไดเรกทอรี LIBS
หลังจากประสบความสำเร็จดังที่แสดงในรูปต่อไปนี้:
หลังจากใส่แล้วคลิกชื่อขวดที่เราต้องการพิมพ์ซึ่งก็คือ kafka-cps.jar และเลือก classpath สำหรับการกำหนดค่า
ผลลัพธ์ที่แก้ไขมีดังนี้:
ขวดทั้งหมดเขียนด้วย LIBS/ คลิก ตกลง เพื่อกลับไปที่หน้าการกำหนดค่า
ในเวลาเดียวกันโปรดทราบว่าในหน้าการกำหนดค่าตรวจสอบ Build on Make
สุดท้ายคลิก ตกลง บนหน้าการกำหนดค่าเพื่อให้การกำหนดค่าเสร็จสมบูรณ์ กลับไปที่แนวคิดคลิก build-> สร้างสิ่งประดิษฐ์ และเลือก Build
แพ็คเกจ JAR ที่เราต้องการจะถูกสร้างขึ้น ตำแหน่งของมันอยู่ใน /ออก/สิ่งประดิษฐ์/kafka_cps_jar ในไดเรกทอรี OUT ของไดเรกทอรีโครงการ
ต่อไปนี้เป็นเนื้อหาไฟล์รายการที่กำหนดค่าไว้อย่างถูกต้อง
แพ็คเกจพร้อม maven-shade-plugin
กระบวนการบรรจุภัณฑ์ข้างต้นนั้นยุ่งยากเกินไปและไม่ได้ใช้ประโยชน์จากคุณสมบัติของโครงการการจัดการ Maven ในการทำเช่นนี้เรากำลังใช้ปลั๊กอิน Maven-Shade-Plugin ใน Maven ที่นี่ ใน pom.xml เราเพิ่มข้อมูลต่อไปนี้เพื่อเพิ่มปลั๊กอิน
<plugin> <sloupid> org.apache.maven.plugins </groupId> <ratifactid> maven-shade-plugin </artifactid> <sersion> 1.4 </เวอร์ชัน> <การกำหนดค่า> <SomentEplyReduCEDPOM> True </goalsuredenceDucedPom> <transformers> <transformer emplementation = "org.apache.maven.plugins.shade.resource.manifestresourceTransformer"> <mainclass> main.main </ainclass>
มีแท็ก 'การกำหนดค่า' อยู่ในนั้น มีแท็ก หม้อแปลง ภายใต้แท็กนี้เพื่อกำหนดค่าทางเข้าสู่ฟังก์ชั่นหลัก ( <mainclass> main.main </ainclass> ) แน่นอนเนื้อหาของแท็กนี้มีความซับซ้อนมากไม่ง่ายอย่างที่เขียนไว้ด้านบน เหตุผลที่ข้างต้นเป็นเรื่องง่ายมากคือมีวิธีการหลักเพียงวิธีเดียวในทุกคลาส (รวมถึงเหยือกบุคคลที่สาม) หากมีวิธีการหลักในขวดของบุคคลที่สามจำเป็นต้องมีการกำหนดค่าเพิ่มเติม การกำหนดค่าข้างต้นอาจไม่สำเร็จ
หลังจากเพิ่มรหัสนี้ลงใน pom.xml เราสามารถใช้คำสั่ง maven เพื่อจัดทำแพคเกจได้ คำแนะนำมีดังนี้:
MVN Clean Compile // ล้างไฟล์ Compile Target ก่อนหน้าและ recompile MVN Clean Package // แพ็คเกจโครงการ (เนื่องจากปลั๊กอินถูกกำหนดค่าแพ็คเกจ JAR สามารถเรียกใช้งานได้) MVN Clean Install // Installe โครงการแล้วคุณสามารถใช้งานได้
จากนั้นเรียกใช้ผ่าน java -jar cps-1.0-snapshot.jar
หากคุณใช้แนวคิดคุณสามารถใช้เครื่องมือการจัดการ Maven ที่รวมอยู่เพื่อเรียกใช้คำสั่งข้างต้นแทน ดังที่แสดงในรูปด้านล่างให้คลิกส่วนสีน้ำเงิน
แพ็คเกจที่มี maven-assembly-plugin
เราต้องคลิกที่คำสั่งมากมายเพื่อจัดทำวิธีการข้างต้น เวลานี้การใช้ปลั๊กอินใหม่มันจะง่ายกว่าในการจัดแพ็คเกจ ในทำนองเดียวกันเพิ่มรหัสต่อไปนี้เป็น pom.xml สามารถลบรหัสปลั๊กอิน maven-shade-plugin ข้างต้นได้ เป็นการดีที่สุดที่จะไม่เขียนรหัสปลั๊กอิน 2 รหัส
<Plugin> <RatIfactId> MAVEN-ASSEMBLY-PLUGIN </artIfactId> <Sersion> 2.4 </เวอร์ชัน> <การกำหนดค่า> <ScriptorRefs> <ScriptorRefs> <ScriptorRef> JAR-WITH-DENISTLENCIES </descriptorRef> </archive> </configuration> <concution> <id> Make-Assembly </id> <pare> Package </Phase> <source> <goal> Single </eroit> </เป้าหมาย> </Execution> </encutions>
นี่คือแท็กรายการเพื่อกำหนดค่าทางเข้าสู่ฟังก์ชั่นหลัก จากนั้นใช้คำแนะนำต่อไปนี้เพื่อรับรู้บรรจุภัณฑ์
mvn assembly:assembly
หากคุณใช้แนวคิดคุณสามารถใช้เครื่องมือการจัดการ Maven ที่รวมอยู่เพื่อเรียกใช้คำสั่งข้างต้นแทน ดังที่แสดงในรูปด้านล่างคลิกที่ส่วนสีน้ำเงิน
จากนั้นดำเนินการโดยการดำเนินการ java -jar cps-1.0-snapshot-jar-with-dependencies.jar
ข้างต้นเป็นเนื้อหาทั้งหมดของบทความนี้ ฉันหวังว่าเนื้อหาของบทความนี้จะช่วยในการศึกษาหรือทำงานของทุกคน ฉันหวังว่าจะสนับสนุน Wulin.com เพิ่มเติม!