הפעל משימת נמלים עם מייבן

1. הקדמה

Maven ו- Ant הם שניהם כלים ידועים לבניית אוטומציה עבור Java. למרות שלרוב נשתמש רק באחד כזה, ישנם מקרים שבהם הגיוני להשתמש בשניים יחד.

מקרה נפוץ הוא בעבודה על פרויקט מורשת המשתמשת ב- Ant, ואנחנו רוצים להציג את Maven בהדרגה תוך שמירה על כמה משימות נמלים קיימות.

במדריך זה נסקור כיצד לעשות זאת באמצעות תוסף Maven AntRun.

2. מייבן AntRun חיבור

Maven AntRun תוסף מאפשר לנו להפעיל משימות של נמלים בתוך Maven.

2.1. הוספת התוסף

כדי להשתמש בתוסף זה, עלינו להוסיף אותו לתוספי הבנייה של פרויקט Maven שלנו:

 org.apache.maven.plugins maven-antrun-plugin 1.8 ... 

את גרסת התוסף האחרונה ניתן למצוא ב- Maven Central (אם כי היא עודכנה זמן רב).

2.2. ביצועים של תוספים

כמו בכל תוסף Maven אחר, כדי להשתמש בתוסף AntRun, עלינו להגדיר ביצועים.

בדוגמה שלהלן אנו מגדירים ביצוע אחד הקשור למייבן חֲבִילָה שלב, אשר יקודד את קובץ ה- JAR הסופי מספריית היעד של הפרויקט:

 org.apache.maven.plugins maven-ant-run-plugin 1.8 zip-artifacts run package 

כדי לבצע את התוסף, אנו מפעילים את הפקודה:

חבילת mvn

מאז שהכרזנו שהתוסף שלנו יפעל במהלך Maven's חֲבִילָה שלב, הפעלת Maven's חֲבִילָה המטרה תבצע את תצורת התוסף שלנו לעיל.

3. דוגמה לשימוש build.xml קוֹבֶץ

מלבד המאפשר לנו להגדיר יעדי נמלים בתצורת התוספים, אנו יכולים גם להשתמש בממלה קיימת build.xml קוֹבֶץ.

3.1. build.xml

להלן דוגמה לנמלה של פרויקט build.xml קובץ עם יעד שהוגדר להעלאת קבצי zip מספריית הבסיס של הפרויקט לשרת FTP:

 תיאור פרויקט ... 

3.2. תצורת התוסף

כדי להשתמש באמור לעיל build.xml קובץ, אנו מגדירים את הביצוע בהצהרת התוסף שלנו:

 לרוץ להתקין פריסת חפץ 

מאז ftp המשימה אינה כלולה ב ant.jar, עלינו להוסיף את התלות האופציונלית של Ant לתצורת התוסף שלנו:

  ... commons-net commons-net 1.4.1 org.apache.ant ant-commons-net 1.8.1 

כדי לבצע את התוסף, אנו מפעילים את הפקודה:

להתקין mvn

4. מסקנה

במאמר קצר זה, דנו בהפעלת משימות נמלים עם Maven AntRun חיבור. למרות שמדובר בתוסף פשוט מאוד, בעל מטרה אחת בלבד, תוסף זה יכול להתגלות כיעיל בפרויקטים ובצוותים שמעדיפים את השימוש ב- Ant להוראות בנייה ספציפיות.

ואם אתה רוצה ללמוד עוד על Ant ו- Maven, אתה יכול לקרוא את המאמר שלנו ולהשוות בין שני אלה - יחד עם Gradle.


$config[zx-auto] not found$config[zx-overlay] not found