'תלות הם קודים חיצוניים וקטעי טקסט המיובאים לפרויקט שלך כדי לספק פונקציונליות נוספת. לדוגמה, תלות יכולה להיות ארכיון או קובץ אחר ב-Java Projects. חלקים אחרים של הפרויקט מתייחסים לאחר מכן לתלות להפעלה.
תמונה ברורה של עץ התלות עבור הפרויקט שלך יכולה להיות מועילה. הוא מאפשר למצוא במהירות התנגשויות בין חבילות מותקנות ולפתור אותן ביעילות.
במדריך זה, נלמד כיצד להציג את עץ התלות של פרויקט Maven.'
בואו נתחיל.
תוסף Maven Dependency
כלי השירות Apache Maven מגיע עם כלי המאפשר לך לנהל את התלות שלך. התוסף Maven Dependency יאפשר לך להפעיל פקודה פשוטה בפרויקט שלך ולדמיין את כל התלות שלו.
משאב הפלאגין מוצג להלן:
https://maven.apache.org/plugins/maven-dependency-plugin/usage.html
הדרך הטובה ביותר לדמיין את עץ התלות בפרויקט שלך עם תוסף זה היא על ידי הפעלת הפקודה הבאה:
תלות mvn : עֵץהפקודה הקודמת תאתר את כל התלות בפרויקט שלך ותחזיר מבנה דמוי עץ.
הבה נמחיש כיצד אנו יכולים להשיג זאת.
אתה יכול להשתמש בכל פרויקט של Maven עם כל התלות הנדרשת כדי לעשות זאת.
לאחר שתפעיל את הפקודה למעלה, אתה אמור לראות את הפלט לדוגמה הבא:
[ מידע ] --- מאבן - תלות - חיבור : 2.8 : עֵץ ( בְּרִירַת מֶחדָל - cli ) @ג'דיס ---[ מידע ] redis. לקוחות : ג'די : קַנקַן : 4.3.0 - תמונת מצב
[ מידע ] +- org. slf4j : slf4j - API : קַנקַן : 1.7.32 : לְלַקֵט
[ מידע ] +- org. אפאצ'י . נחלת הכלל : נחלת הכלל - בריכה 2 : קַנקַן : 2.11.1 : לְלַקֵט
[ מידע ] +- org. json : json : קַנקַן : 20211205 : לְלַקֵט
[ מידע ] +- עם. גוגל . קוד . gson : gson : קַנקַן : 2.8.9 : לְלַקֵט
[ מידע ] +- ג'וניט : ג'וניט : קַנקַן : 4.13.2 : מִבְחָן
[ מידע ] | \ - org. hamcrest : hamcrest - הליבה : קַנקַן : 1.3 : מִבְחָן
[ מידע ] +- org. slf4j : slf4j - פָּשׁוּט : קַנקַן : 1.7.32 : מִבְחָן
[ מידע ] +- עם. קולשוטר . שקע ג'וניקס : שקע ג'וניקס - הליבה : לִרְאוֹת : 2.4.0 : מִבְחָן
[ מידע ] | +- עם. קולשוטר . שקע ג'וניקס : שקע ג'וניקס - יָלִיד - מְשׁוּתָף : קַנקַן : 2.4.0 : מִבְחָן
[ מידע ] | \ - עם. קולשוטר . שקע ג'וניקס : שקע ג'וניקס - מְשׁוּתָף : קַנקַן : 2.4.0 : מִבְחָן
[ מידע ] \ - org. מוקיטו : מוקיטו - בשורה : קַנקַן : 3.12.4 : מִבְחָן
[ מידע ] \ - org. מוקיטו : מוקיטו - הליבה : קַנקַן : 3.12.4 : מִבְחָן
[ מידע ] +- נֶטוֹ. bytebuddy : בייט - חבר : קַנקַן : 1.11.13 : מִבְחָן
[ מידע ] +- נֶטוֹ. bytebuddy : בייט - חבר - סוֹכֵן : קַנקַן : 1.11.13 : מִבְחָן
[ מידע ] \ - org. מוסכם : מוסכם : קַנקַן : 3.2 : מִבְחָן
כפי שניתן לראות מהפלט שלמעלה, Maven מחזירה את כל התלות של הפרויקט שלנו בפורמט רשימה.
כדאי לזכור שפקודה זו מחייבת אותך להתקין את Maven ו-Java JDK במערכת שלך.
תלות סינון
אם אתה עובד על פרויקט גדול, אתה עלול להתקשות להציג ולנהל את כל התלות באמצעות הפקודה לעיל.
למרבה המזל, תוסף עץ התלות של Maven מאפשר לך לסנן את התלות המוצגת. זה אומר שאתה יכול לכלול או לא לכלול כל תלות שתרצה.
כדי לכלול רק תלות ספציפית, אנו משתמשים באפשרות Dincludes כפי שמוצג בתחביר הבא:
תלות mvn : עֵץ - כולל [ groupId ] : [ artifactId ] : [ סוּג ] : [ גִרְסָה ]זכור שכל אחד מהפלחים בפרמטר -Dincludes הוא אופציונלי.
לדוגמה, כדי להראות כיצד נעשה שימוש בתלות ספציפית בפרויקט, אנו יכולים להפעיל את הפקודה הבאה:
תלות mvn : עֵץ - כולל = שקע ג'וניקס : שקע ג'וניקס - הליבההקוד הקודם אמור להחזיר:
[ מידע ][ מידע ] ------------------------< redis. לקוחות : ג'די >-------------------------
[ מידע ] בניית Jedis 4.3.0 - תמונת מצב
[ מידע ] -------------------------------- [ קַנקַן ] ----------------------------------
[ מידע ]
[ מידע ] --- מאבן - תלות - חיבור : 2.8 : עֵץ ( בְּרִירַת מֶחדָל - cli ) @ג'דיס ---
כדי לא לכלול תלות מהעץ, נוכל להשתמש בפרמטר -Dincludes כפי שמוצג בתחביר למטה.:
תלות mvn : עֵץ - כולל = [ groupId ] : [ artifactId ] : [ סוּג ] : [ גִרְסָה ]לדוגמה:
תלות mvn : עֵץ - לא כולל = שקע ג'וניקס : שקע ג'וניקס - הליבהזה אמור להחזיר את הפלט כפי שמוצג להלן:
Maven שמור תלות לקובץ
אתה יכול גם לשמור את עץ התלות בקובץ באמצעות הפרמטר -DoutputFile. דוגמה מוצגת להלן:
תלות mvn : עֵץ - DoutputFile = 'dep.tree'בפקודה הקודמת, אנו מורים ל-Maven ליצור עץ תלות ולשמור אותו בקובץ בשם dep.tree.
פלט הקובץ המתקבל מסופק להלן:
+- org. slf4j : slf4j - API : קַנקַן : 1.7.32 : לְלַקֵט+- org. אפאצ'י . נחלת הכלל : נחלת הכלל - בריכה 2 : קַנקַן : 2.11.1 : לְלַקֵט
+- org. json : json : קַנקַן : 20211205 : לְלַקֵט
+- עם. גוגל . קוד . gson : gson : קַנקַן : 2.8.9 : לְלַקֵט
+- ג'וניט : ג'וניט : קַנקַן : 4.13.2 : מִבְחָן
| \ - org. hamcrest : hamcrest - הליבה : קַנקַן : 1.3 : מִבְחָן
+- org. slf4j : slf4j - פָּשׁוּט : קַנקַן : 1.7.32 : מִבְחָן
+- עם. קולשוטר . שקע ג'וניקס : שקע ג'וניקס - הליבה : לִרְאוֹת : 2.4.0 : מִבְחָן
| +- עם. קולשוטר . שקע ג'וניקס : שקע ג'וניקס - יָלִיד - מְשׁוּתָף : קַנקַן : 2.4.0 : מִבְחָן
| \ - עם. קולשוטר . שקע ג'וניקס : שקע ג'וניקס - מְשׁוּתָף : קַנקַן : 2.4.0 : מִבְחָן
\ - org. מוקיטו : מוקיטו - בשורה : קַנקַן : 3.12.4 : מִבְחָן
\ - org. מוקיטו : מוקיטו - הליבה : קַנקַן : 3.12.4 : מִבְחָן
+- נֶטוֹ. bytebuddy : בייט - חבר : קַנקַן : 1.11.13 : מִבְחָן
+- נֶטוֹ. bytebuddy : בייט - חבר - סוֹכֵן : קַנקַן : 1.11.13 : מִבְחָן
\ - org. מוסכם : מוסכם : קַנקַן : 3.2 : מִבְחָן
Maven תכלול רק את תלות הפרויקט בקובץ בצורה היררכית.
סיכום
פוסט זה סיקר כיצד לצפות בעץ התלות של Maven באמצעות תוסף התלות של Maven.