Android Gradle Plugin 2.1.0 (אפריל 2016)

2.1.3 (אוגוסט 2016)

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

יחסי תלות:
גרסת מינימום גרסת ברירת המחדל הערות
Gradle 2.10 2.10 מידע נוסף זמין במאמר עדכון Gradle.
SDK Build Tools 23.0.2 23.0.2 מתקינים או מגדירים את SDK Build Tools.
המינוי החדש:
  • הוספנו תמיכה ב-N Developer Preview, ב-JDK 8 ובתכונות השפה של Java 8 באמצעות כלי העריכה של Jack. מידע נוסף זמין במדריך N Preview.

    הערה: Instant Run לא פועל כרגע עם Jack, והוא יושבת כשמשתמשים בכלי הפיתוח החדש. צריך להשתמש ב-Jack רק אם אתם מפתחים עבור N Preview ואתם רוצים להשתמש בתכונות השפה הנתמכות של Java 8.

  • נוספה תמיכה שמוגדרת כברירת מחדל בתכנות Java מצטברות כדי לקצר את זמן הידור הקוד במהלך הפיתוח. כדי לעשות זאת, המערכת מקמפל מחדש רק את החלקים של המקור שהשתנו או שצריך לקמפל מחדש. כדי להשבית את התכונה הזו, מוסיפים את הקוד הבא לקובץ build.gradle ברמת המודול:

    Groovy

    android {
      ...
      compileOptions {
        incremental false
      }
    }

    Kotlin

    android {
      ...
      compileOptions {
        incremental = false
      }
    }
  • הוספנו תמיכה ב-dexing-in-process, שמבצע dexing בתוך תהליך ה-build ולא בתהליכים חיצוניים נפרדים של מכונות וירטואליות. כך לא רק שגירסאות build מצטברות נוצרות מהר יותר, אלא גם גרסאות build מלאות. התכונה מופעלת כברירת מחדל בפרויקטים שבהם הגדרתם את הגודל המקסימלי של אשכול ה-daemon של Gradle ל-2048MB לפחות. כדי לעשות זאת, צריך לכלול את הקטע הבא בקובץ gradle.properties של הפרויקט:

    ```none org.gradle.jvmargs = -Xmx2048m ```

    אם הגדרתם ערך ל- javaMaxHeapSize בקובץ build.gradle ברמת המודול, צריך להגדיר את org.gradle.jvmargs לערך של javaMaxHeapSize + 1024MB. לדוגמה, אם הגדרתם את javaMaxHeapSize לערך '2048m', צריך להוסיף את הקטע הבא לקובץ gradle.properties של הפרויקט:

    ```none org.gradle.jvmargs = -Xmx3072m ```

    כדי להשבית את ה-dexing-in-process, מוסיפים את הקוד הבא לקובץ build.gradle ברמת המודול:

    Groovy

    android {
      ...
      dexOptions {
          dexInProcess false
      }
    }

    Kotlin

    android {
      ...
      dexOptions {
          dexInProcess = false
      }
    }