המרת קובץ Build Gradle ל- Maven POM

1. הקדמה

במדריך זה נבחן כיצד להמיר קובץ build Gradle לקובץ MOM POM. נבדוק גם כמה אפשרויות התאמה אישית זמינות.

2. קובץ Build Gradle

נתחיל בפרויקט סטראדל ג'אווה של Gradle, דרגה למייבון,עם העוקבים build.gradle קוֹבֶץ:

מאגרים {mavenCentral ()} group = 'com.baeldung' version = '0.0.1-SNAPSHOT' החל תוסף: 'תלות Java' {compile ('org.slf4j: slf4j-api') testCompile ('junit: junit') }

3. תוסף Maven

Gradle נשלח עם תוסף Maven, שמוסיף תמיכה להמרת קובץ Gradle לקובץ POM של Maven. זה יכול גם לפרוס חפצים במאגרי Maven.

כדי להשתמש בזה, בואו נוסיף את התוסף Maven שלנו build.gradle קוֹבֶץ:

החל תוסף: 'maven'

התוסף משתמש ב- קְבוּצָה וה גִרְסָה נוכח בקובץ Gradle ומוסיף אותם לקובץ POM. כמו כן, זה לוקח באופן אוטומטי את artifactId משם הספריה.

התוסף מוסיף את ה- להתקין גם משימה. אז כדי להמיר, בואו נפעיל את הדברים הבאים:

דרג להתקין

הפעלת הפקודה הנ"ל יוצרת a לִבנוֹת ספריה עם שלוש ספריות משנה:

  • libs - המכיל את הצנצנת עם השם $ {artifactId} - $ {version} .jar
  • pomsהמכיל את קובץ ה- POM שהומר עם השם pom-default.xml
  • tmp / צנצנת - המכיל את המניפסט

קובץ ה- POM שנוצר ייראה כך:

  4.0.0 com.baeldung gradle-to-maven 0.0.1-SNAPSHOT org.slf4j slf4j-api הידור מבחן junit junit 

ה להתקין המשימה גם מעלה את קובץ ה- POM שנוצר ואת ה- JAR למאגר Maven המקומי.

4. התאמה אישית של תוסף Maven

במקרים מסוימים, זה עשוי להיות שימושי להתאים אישית את פרטי הפרויקט בקובץ POM שנוצר. בואו נסתכל.

4.1. groupId,artifactId, ו גִרְסָה

שינוי ה- groupId, artifactId וה גִרְסָה של ה- POM ניתן לטפל ב להתקין לַחסוֹם:

התקן {repositories {mavenInstaller {pom.version = '0.0.1-maven-SNAPSHOT' pom.groupId = 'com.baeldung.sample' pom.artifactId = 'gradle-maven-converter'}}}

מפעילה את להתקין המשימה מייצרת כעת את קובץ ה- POM עם המידע המסופק לעיל:

com.baeldung.sample gradle-maven-converter 0.0.1-maven-SNAPSHOT

4.2. מדריך ושם ה- POM

לִפְעָמִים, ייתכן שנצטרך להעתיק את קובץ ה- POM לספרייה אחרת ועם שם אחר. לכן, בואו להוסיף את הדברים הבאים ל- להתקין לַחסוֹם:

pom.writeTo ("$ {mavenPomDir} / $ {project.group} / $ {project.name} /pom.xml")

ה mavenPomDir תכונה נחשפת על ידי התוסף, אשר יצביע על build / poms. אנו יכולים גם לתת את הנתיב המוחלט של כל ספריה שאליה נרצה להעתיק את קובץ ה- POM.

לאחר הפעלת ה- להתקין נוכל לראות את pom.xml בְּתוֹך build / poms / com.baeldung / gradle-to-maven.

4.3. תוכן שנוצר אוטומטית

תוסף Maven מאפשר גם לשנות את כל אחד ממרכיבי ה- POM שנוצרו. לדוגמה, כדי להפוך תלות לבחירה, אנו יכולים להוסיף את הסגירה שלהלן pom.whenConfigured:

pom.whenConfigured {pom -> pom.dependencies.find {dep -> dep.groupId == 'junit' && dep.artifactId == 'junit'}. optional = true}

זה יפיק את אופציונאלי התכונה נוספה ל תלות:

 מבחן צומת ג'וניט נכון 

4.4. מידע נוסף

לבסוף, אם אנו רוצים להוסיף מידע נוסף, אנו יכולים לכלול כל אלמנט הנתמך על ידי Maven pom.project בּוֹנֶה.

בואו נוסיף פרטי רישיון:

pom.project {inceptionYear '2020' רישיונות {licens {name 'My License' url '//www.mycompany.com/licenses/license.txt' distribution 'repo'}}}

כעת אנו יכולים לראות פרטי רישיון שנוספו ל- POM:

2020 הרישיון שלי //www.mycompany.com/licenses/license.txt repo 

5. מסקנה

במדריך מהיר זה למדנו כיצד להמיר קובץ build של Gradle ל- Maven POM.

כמו תמיד, ניתן למצוא את קוד המקור ממאמר זה ב- GitHub.


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