10/25/2013

Alfresco maven all-in-one archetype ภาคกำเนิด

ในการพัฒนา Alfresco นั้นจะมีระบบที่เรียกว่า Alfresco Module Package (AMP) ซึ่งจะต้องวางโฟลเดอร์ให้ตรงตามโครงสร้างของ Alfresco และสร้าง Ant script ขึ้นมาเพื่อช่วยจัดการในเรื่องของการสร้างแพ็คเกจ ซึ่งข้อเสียมันคือมันไม่สามารถจัดการ dependencies ได้และจะต้องสร้างจากมือทุกครั้ง (หรือเรียกว่าไม่มีแม่แบบของโปรเจคให้) และตัว AMP เองบางทีก็ไม่เหมาะกับการปรับแต่งอะไรเล็กๆ น้อยๆ ได้ ด้วยเหตุนี้เองจึงมีคนใน community ได้สร้างปลั๊กอินเพื่อต่อกับเครื่องมืออีกตัวนึงชื่อว่า Maven

Maven All-in-one Archetype

Maven All-in-one Archetype เป็นปลั๊กอินที่ช่วยในการสร้างแม่แบบ รันการทดสอบ จัดการ dependencies และสร้างแพ็คเกจของแต่ล่ะ Module เพื่อพร้อมนำไปติดตั้งเข้าสู่ระบบ
  1. ขั้นตอนแรกคือการสร้างโปรเจค Alfresco ขึ้นมาผ่าน maven โดยสั่ง
    mvn archetype:generate -DarchetypeCatalog=https://artifacts.alfresco.com/nexus/content/groups/public/archetype-catalog.xml -Dfilter=org.alfresco.maven.archetype
  2. เลือก alfresco-allinone-archetype
  3. ใส่ groupId และ artifactId 
  4. เลือกเวอร์ชั่นและอิดิทชั่นของ Alfresco ซึ่ง Maven All-in-one Archetype จะเลือกเป็นเวอร์ชั่น 4.2.c community ให้โดยอัตโนมัติ
  5. Maven จะสร้างโฟลเดอร์ให้ตามชื่อของ artifactId