בניית יישום Java עם Gradle

1. סקירה כללית

מדריך זה מספק מדריך מעשי לבניית פרויקט מבוסס Java באמצעות Gradle.

נסביר את השלבים של יצירת מבנה פרויקט באופן ידני, ביצוע התצורה הראשונית והוספת תוסף Java ותלות ב- JUnit. לאחר מכן נבנה ונפעיל את היישום.

לבסוף, בחלק האחרון, אנו נותנים דוגמה כיצד לעשות זאת באמצעות תוסף Gradle Build Init. מבוא בסיסי כלשהו ניתן למצוא גם במאמר מבוא ל- Gradle.

2. מבנה פרויקט Java

לפני שניצור ידנית פרויקט Java ונכין אותו לבנייה, עלינו להתקין את Gradle.

נתחיל ביצירת תיקיית פרויקט באמצעות מסוף PowerShell עם השם דרגה-עובד-אפליקציה:

> mkdir דרגה-עובד-אפליקציה

לאחר מכן, בוא ננווט לתיקיית הפרויקט וצור תיקיות משנה:

> mkdir src / main / java / עובד

התפוקה המתקבלת מוצגת:

מדריך: D: \ דרגה-עובד-אפליקציה \ src \ main \ java מצב LastWriteTime שם אורך ---- ------------- ------ ---- d-- --- 20/10/2020 12:14 עובד

בתוך מבנה הפרויקט לעיל, בואו ניצור שני שיעורים. האחד הוא פשוט עוֹבֵד כיתה עם נתונים כגון שם, כתובת דוא"ל ושנת לידה:

שכבה ציבורית עובד {שם מחרוזת; מחרוזת דוא"ל כתובת; int yearOfBirth; }

השנייה היא העיקרית אפליקציית עובדים כיתה שמדפיסה עוֹבֵד נתונים:

שכבה ציבורית EmployeeApp {public static void main (String [] args) {עובד שכיר = עובד חדש (); עובד.שם = "ג'ון"; employee.emailAddress = "[מוגן באמצעות הדוא"ל]; employee.yearOfBirth = 1978; System.out.println ("שם:" + שם עובד); System.out.println ("כתובת דוא"ל:" + עובד.מייל כתובת); System.out.println ("שנת לידה:" + עובד.עבודה לידה); }}

3. בנה פרויקט Java

לידלבנות את פרויקט Java שלנו, אנו יוצרים build.gradle קובץ תצורה בתיקיית הבסיס של הפרויקט.

להלן שורת הפקודה PowerShell:

הד> build.gradle

אנו מדלגים על השלב הבא הקשור לפרמטרי הקלט:

פלט כתיבה cmdlet במיקום צינור הפקודה 1 ערכי אספקה ​​לפרמטרים הבאים: InputObject [0]:

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

תוספים {id 'application'}

לאחר מכן, אנו מיישמים תוסף יישומים ו- הוסף שם מוסמך לחלוטין של המחלקה הראשית:

החל תוסף: 'application' mainClassName = 'עובד.עובד יישום'

כל פרויקט מורכב מ משימות. משימה מייצגת יצירה שביצוע מבנה כמו קומפילציה של קוד המקור.

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

println 'זה מבוצע בשלב התצורה' המשימה מוגדרת {println 'הפרויקט מוגדר'}

בְּדֶרֶך כְּלַל, בניית דרגה זו המשימה העיקרית והמשימה הנפוצה ביותר. משימה זו אוספת, בודקת ומרכיבה את הקוד לקובץ JAR. את הבנייה מתחילים להקליד:

> בניית דרגה 

בצע את הפקודה לעיל להפקה:

> הגדר פרוייקט: פעולה זו מבוצעת בשלב התצורה. הפרויקט מוגדר BUILD SUCCESSFUL ב- 1s 2 משימות הניתנות לפעולה: 2 עדכניות

כדי לראות את תוצאות הבנייה, בואו נסתכל על תיקיית הבנייה המכילה תיקיות משנה:שיעורים, הפצות, libs ודוחות. מקליד את עץ / ו נותן את המבנה של תיקיית ה- build:

├─── בנה │ ├─── שיעורים │ │ └───java │ │ ├─── ראשי │ │ │ └─── עובד │ │ │ עובד.שכבה │ │ │ עובד שכיר.כיתה │ │ │ │ │ └─── טסט │ │ └─── עובד │ │ EmployeeAppTest.class │ │ │ ├─── הפצות │ │ דרגה-עובד-app.tar │ │ דרגה- עובד- app.zip │ ├─── ליפות l │ דרג-עובד-אפליקציה.גאר │ │ │ ├─── דיווחים │ │ └─── בדיקות │ │ └──── טסט │ │ │ אינדקס.html │ │ │ │ │ ──── שיעורים │ │ │ עובד . EmployeeAppTest.html

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

בדרך כלל, אני דיווחים, ישנם קבצים שנוצרים בעת הפעלת בדיקות JUnit.

עכשיו הכל מוכן להפעלת פרויקט Java על ידי הקלדה ריצת דרגה.התוצאה של ביצוע היישום בעת היציאה:

> הגדר את הפרוייקט: פעולה זו מבוצעת בשלב התצורה הפרויקט מוגדר> משימה: הפעלה שם: ג'ון כתובת דוא"ל: [מוגן באמצעות דוא"ל] שנת לידה: 1978 בנה הצלחה בשני 2 משימות שניתן לבצע: 1 בוצע, 1 עדכני 

3.1. בנה באמצעות עטיפת Gradle

עטיפת הגרדלים היא תסריט המפעיל גרסה מוצהרת של גרדל.

ראשית, נגדיר משימת עטיפה ב- build.gradle קוֹבֶץ:

עטיפת משימות (סוג: Wrapper) {gradleVersion = '5.3.1'}

בוא נפעיל את המשימה הזו באמצעות עטיפת מדרגות מ- Power Shell:

> הגדר פרוייקט: פעולה זו מבוצעת בשלב התצורה. הפרויקט מוגדר BUILD SUCCESSFUL במשימה פעולה אחת של 1s: 1 בוצעה

מספר קבצים ייווצרו תחת תיקיית הפרויקט, כולל הקבצים תחת / דרגה / עטיפה מקום:

│ gradlew │ gradlew.bat │ ├─── gradle │ └─── wrapper │ gradle-wrapper.jar │ gradle- wrapper.properties
  • מדרדר: סקריפט הפגז המשמש ליצירת משימות Gradle בלינוקס
  • gradlew.bat: א .עטלף סקריפט שמשתמשי Windows ליצור משימות Gradle
  • gradle-wrapper.jar: צנצנת להפעלת עטיפה של היישום שלנו
  • gradle-wrapper.properties: קובץ מאפיינים להגדרת התצורה של העטיפה

4. הוסף תלות ב- Java והפעל בדיקה פשוטה

ראשית, בקובץ התצורה שלנו, עלינו להגדיר מאגר מרוחק ממנו אנו מורידים צנצנות תלות. לרוב, מאגרים אלה הם גם אלה mavenCentral () אוֹ jcenter (). בואו לבחור את השנייה:

מאגרים {jcenter ()}

עם יצירת המאגרים שלנו, נוכל לציין אילו תלות להוריד. בדוגמה זו אנו מוסיפים Apache Commons וספריית JUnit. ליישום, הוסף test יישום ו testRuntime חלקים בתצורת התלות.

זה מבוסס על בלוק בדיקה נוסף:

תלות {לקבץ קבוצה: 'org.apache.commons', שם: 'commons-lang3', גרסה: '3.10' testImplementation ('junit: junit: 4.13') testRuntime ('junit: junit: 4.13')} test {useJUnit ()}

כאשר זה נגמר, בואו ננסה את העבודה של JUnit במבחן פשוט. נווט אל src התיקייה והכינו את תיקיות המשנה למבחן:

src> mkdir test / java / עובד

בתוך תיקיית המשנה האחרונה, בואו ניצור EmployeeAppTest.java:

מחלקה ציבורית EmployeeAppTest {@Test public void testData () {Employee testEmp = this.getEmployeeTest (); assertEquals (testEmp.name, "John"); assertEquals (testEmp.emailAddress, "[דוא"ל מוגן]"); assertEquals (testEmp.yearOfBirth, 1978); } עובד פרטי getEmployeeTest () {עובד שכיר = עובד חדש (); עובד.שם = "ג'ון"; employee.emailAddress = "[מוגן באמצעות הדוא"ל]; employee.yearOfBirth = 1978; עובד חוזר; }}

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

5. אתחול פרויקט Java באמצעות Gradle

בחלק זה נסביר את השלבים ליצירה ובניית יישום Java שעברנו עד כה. ההבדל הוא שהפעם אנו עובדים בעזרת תוסף Gradle Build Init.

צור תיקיית פרויקט חדשה ושמה gradle-java-example. לאחר מכן עבור לתיקיית הפרויקט הריקה ההיא והפעל את סקריפט ה- init:

> דרגה ראשונה

Gradle ישאל אותנו עם מעט שאלות ויציע אפשרויות ליצירת פרויקט. השאלה הראשונה היא איזה סוג פרויקט אנו רוצים ליצור:

בחר סוג פרוייקט שייצור: 1: בסיסי 2: יישום cpp 3: ספריית cpp 4: יישום גרובי 5: ספריית גרובי 6: יישום Java 7: ספריית Java 8: יישום kotlin 9: ספריית kotlin 10: scala-library בחר build script DSL: 1: groovy 2: kotlin הזן בחירה [1..10] 6

בחר אפשרות 6 לסוג הפרויקט ואז אפשרות ראשונה (גרובי) לסקריפט הבנייה.

לאחר מכן מופיעה רשימת שאלות:

בחר מסגרת בדיקה: 1: junit 2: testng 3: spock הזן בחירה (ברירת מחדל: junit) [1..3] 1 שם פרויקט (ברירת מחדל: gradle-java-example): חבילת מקור (ברירת מחדל: gradle.java.example) : עובד בנה הצלחה ב 57m 45s 2 משימות הניתנות לפעולה: 2 הוצאו לפועל

כאן אנו בוחרים באפשרות הראשונה, junit, למסגרת הבדיקה. בחר את שם ברירת המחדל עבור הפרויקט שלנו והקלד "עובד" כשם חבילת המקור.

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

├─── העיקרי │ ├───java │ │ └─── עובד │ │ App.java │ │ │ └─── מקורות └─── מבחן ├─── java │ └─── עובד │ AppTest. java │ └─── מקורות

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

> משימה: הפעל שלום עולם. בניית הצלחה ב 1s 2 משימות לפעולה: 1 שבוצע, 1 עדכני

6. מסקנה

במאמר זה הצגנו שתי דרכים ליצור ולבנות יישום Java באמצעות Gradle. העובדה היא שביצענו את העבודה הידנית ולקח זמן להתחיל לקמפל ולבנות יישומים משורת הפקודה. במקרה זה, עלינו לשים לב לייבוא ​​של כמה חבילות ושיעורים נדרשים אם היישום משתמש בספריות מרובות.

בצד השני, ה Gradle init ל- script יש תכונות שיוצרות שלד קל של הפרויקט שלנו, כמו גם כמה מקבצי התצורה המשויכים ל- Gradle.

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


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