Nexus และ Maven ต่างกันอย่างไร


133

NexusและMavenต่างกันอย่างไร

สถานการณ์พื้นฐานของการใช้งานMavenเท่านั้นคืออะไร? แล้วสถานการณ์ที่พิจารณาเฉพาะNexusล่ะ? และหน้าตาเป็นอย่างไรเมื่อต้องการใช้ทั้งสองอย่าง?

คำตอบ:


156

Sonatype NexusและApache Mavenเป็นซอฟต์แวร์สองชิ้นที่มักทำงานร่วมกัน แต่ทำงานในส่วนที่แตกต่างกันมาก Nexus มีที่เก็บในขณะที่ Maven ใช้ที่เก็บเพื่อสร้างซอฟต์แวร์

นี่คือคำพูดจาก " Nexus คืออะไร ":

Nexus จัดการซอฟต์แวร์ "สิ่งประดิษฐ์" ที่จำเป็นสำหรับการพัฒนา หากคุณพัฒนาซอฟต์แวร์บิวด์ของคุณสามารถดาวน์โหลดการอ้างอิงจาก Nexus และสามารถเผยแพร่อาร์ติแฟกต์ไปยัง Nexus เพื่อสร้างวิธีใหม่ในการแชร์อาร์ติแฟกต์ภายในองค์กร ในขณะที่พื้นที่เก็บข้อมูลกลางทำหน้าที่อำนวยความสะดวกอย่างมากสำหรับนักพัฒนาคุณไม่ควรกดปุ่มโดยตรง คุณควรพร็อกซี Central กับ Nexus และดูแลที่เก็บของคุณเองเพื่อให้มั่นใจในความมั่นคงภายในองค์กรของคุณ ด้วย Nexus คุณสามารถควบคุมการเข้าถึงและการปรับใช้อาร์ติแฟกต์ทั้งหมดในองค์กรของคุณได้อย่างสมบูรณ์จากที่เดียว

และนี่คือคำพูดจาก " Maven and Nexus Pro, Made for Each Other " ที่อธิบายว่า Maven ใช้ที่เก็บอย่างไร:

Maven ใช้ประโยชน์จากแนวคิดของที่เก็บโดยการดึงสิ่งประดิษฐ์ที่จำเป็นในการสร้างแอปพลิเคชันและปรับใช้ผลลัพธ์ของกระบวนการสร้างลงในที่เก็บ Maven ใช้แนวคิดของที่เก็บที่มีโครงสร้างเพื่อให้สามารถเรียกใช้ส่วนประกอบเพื่อสนับสนุนการสร้าง คอมโพเนนต์หรือการอ้างอิงเหล่านี้รวมถึงไลบรารีเฟรมเวิร์กคอนเทนเนอร์ ฯลฯ Maven สามารถระบุคอมโพเนนต์ในที่เก็บเข้าใจการอ้างอิงดึงข้อมูลทั้งหมดที่จำเป็นสำหรับบิลด์ที่สำเร็จและปรับใช้เอาต์พุตกลับไปยังที่เก็บเมื่อการสร้างเสร็จสมบูรณ์

ดังนั้นเมื่อคุณต้องการใช้ทั้งสองอย่างคุณจะมีที่เก็บที่จัดการโดย Nexus และ Maven จะเข้าถึงที่เก็บนี้


14

มีคำอธิบายทั่วไปที่ดี: https://gephi.wordpress.com/tag/maven/

ขอฉันพูดสองสามข้อที่สามารถทำให้เกิดความแตกต่าง:

  1. เราย้ายฐานรหัสของเราจาก Ant ไปยัง Maven

  2. อัปโหลดข้อมูล Libra ของบุคคลที่สามทั้งหมดไปยัง Nexus แล้ว Maven ใช้ Nexus เป็นแหล่งข้อมูลสำหรับห้องสมุด

  3. ฟังก์ชันพื้นฐานของตัวจัดการที่เก็บเช่น Sonatype ได้แก่ :

    • การจัดการการอ้างอิงโครงการ
    • Artifacts & Metadata,
    • การพร็อกซีที่เก็บภายนอก
    • และการปรับใช้ไบนารีและ JAR แบบแพ็กเกจเพื่อแชร์อาร์ติแฟกต์เหล่านั้นกับนักพัฒนาและผู้ใช้ปลายทางรายอื่น

2

สิ่งที่ฉันเข้าใจจากการเรียนรู้ของฉันและสิ่งที่ฉันคิดว่ามันอยู่ที่นี่ ฉันอ้างบางส่วนจากหนังสือที่ฉันเรียนรู้สิ่งนี้ Nexus Repository Manager และ Nexus Repository Manager OSS เริ่มต้นเป็นตัวจัดการที่เก็บที่รองรับรูปแบบที่เก็บ Maven แม้ว่าจะรองรับรูปแบบพื้นที่เก็บข้อมูลอื่น ๆ มากมายในตอนนี้ แต่รูปแบบที่เก็บ Maven ยังคงเป็นรูปแบบที่ใช้กันทั่วไปและได้รับการสนับสนุนอย่างดีสำหรับเครื่องมือสร้างและจัดเตรียมที่ทำงานบน JVM และที่อื่น ๆ บทนี้แสดงตัวอย่างการกำหนดค่าสำหรับการใช้ repository manager กับ Apache Maven และเครื่องมืออื่น ๆ อีกมากมาย การตั้งค่าใช้ประโยชน์จากการรวมที่เก็บข้อมูลจำนวนมากและเปิดเผยผ่านกลุ่มที่เก็บ การตั้งค่านี้มีบันทึกไว้ในบทนี้นอกเหนือจากการกำหนดค่าที่ใช้โดยเครื่องมือเฉพาะ

รายละเอียด

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