הוסף מאפייני בנייה ליישום אתחול האביב

1. הקדמה

בדרך כלל, תצורת הבנייה של הפרויקט שלנו מכילה די הרבה מידע על היישום שלנו. ייתכן שיהיה צורך במידע זה ביישום עצמו. לכן, במקום לקודד מידע זה, אנו יכולים להשתמש בו מתצורת הבנייה הקיימת.

במאמר זה נראה כיצד להשתמש במידע מתצורת הבנייה של הפרויקט ביישום Spring Boot.

2. המידע לבנות

נניח שאנחנו רוצים להציג את תיאור היישום ואת הגרסה בדף הבית של האתר שלנו.

בדרך כלל, מידע זה קיים ב pom.xml:

 4.0.0 אביב-אתחול האביב-אתחול המלחמה זהו יישום אתחול פשוט לבדיקת מפעיל אתחול האביב 0.0.1-SNAPSHOT ... 

3. הפניה למידע בקובץ מאפייני היישום

כעת, כדי להשתמש במידע לעיל ביישום שלנו, נצטרך להתייחס אליו תחילה באחד מקבצי מאפייני היישום שלנו:

[אימייל מוגן] @ [אימייל מוגן] @

כאן השתמשנו בערך של נכס הבנייה תיאור פרויקט כדי להגדיר את מאפיין היישום תיאור היישום. בדומה לכך, גרסת אפליקציה מוגדר באמצעות project.version.

החלק המשמעותי ביותר כאן הוא השימוש ב- @ תו סביב שם הנכס. זה אומר לאביב להרחיב את הנכס הנקוב מפרויקט Maven.

כעת, כשאנחנו בונים את הפרויקט שלנו, מאפיינים אלה יוחלפו בערכים שלהם מ- pom.xml.

הרחבה זו מכונה גם סינון משאבים. ראוי לציין כי סוג זה של סינון מוחל רק על תצורת הייצור. כתוצאה מכך, איננו יכולים להשתמש במאפייני הבנייה בקבצים הנמצאים תחת src / test / resources.

דבר נוסף שיש לציין הוא שאם אנו משתמשים ב- addResources דגל, קפיץ אתחול: לרוץ המטרה מוסיפה src / main / resources ישירות לשביל הכיתה. למרות שזה שימושי למטרות טעינה חמה, הוא עוקף את סינון המשאבים וכתוצאה מכך גם את התכונה הזו.

עַכשָׁיו, הרחבת הנכסים הנ"ל פועלת מחוץ לקופסה רק אם אנו משתמשים בה אביב-אתחול-המתנע-הורה.

3.1. הרחבת נכסים ללא אביב-אתחול-המתנע-הורה

בואו נראה כיצד נוכל להפעיל תכונה זו מבלי להשתמש ב- אביב-אתחול-המתנע-הורה תלות.

ראשית, עלינו לאפשר סינון משאבים בתוך ה- אלמנט שלנו pom.xml:

  src / main / resources נכון 

כאן הפעלנו סינון משאבים תחת src / main / resources רק.

לאחר מכן, אנו יכולים להוסיף את תצורת המפריד עבור ה- תוסף maven-resources:

 org.apache.maven.plugins maven-resources-plugin @ false 

שים לב שציינו את ה- useDefaultDelititers נכס כ שֶׁקֶר. זה מבטיח כי מצייני המיקום הסטנדרטיים של Spring כגון $ {placeholder} לא יורחבו על ידי ה- build.

4. שימוש במידע Build בקבצי YAML

אם אנו משתמשים ב- YAML לאחסון מאפייני יישומים, אולי לא נוכל להשתמש @ כדי לציין את מאפייני הבנייה. זה בגלל ש @ הוא דמות שמורה ב- YAML.

אבל, אנו יכולים להתגבר על ידי שניהם קביעת תצורה של תיחום שונה ב תוסף maven-resources:

 org.apache.maven.plugins maven-resources-plugin ^ false 

או, פשוט על ידי עוקף את resource.delimiter נכס בגוש הנכסים שלנו pom.xml:

 ^ 

ואז נוכל להשתמש ^ בקובץ YAML שלנו:

תיאור היישום: ^ project.description ^ application-version: ^ project.version ^

5. מסקנה

במאמר זה ראינו כיצד נוכל להשתמש במידע על פרויקט Maven ביישום שלנו. זה יכול לעזור לנו להימנע מקידוד קשה של המידע שכבר קיים בתצורת בניית הפרויקט בקבצי מאפייני היישום שלנו.

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


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