איתור שגיאות בקוד (lint)

  
בדיקות Lint לאימות השימוש בממשקי ה-API של Gradle
העדכון האחרון גרסה יציבה גרסה מועמדת להפצה גרסת בטא גרסת אלפא
20 במאי 2025 - - - 1.0.0-alpha05

הצהרת יחסי תלות

כדי להוסיף תלות ב-Lint, צריך להוסיף את מאגר Google Maven לפרויקט. מידע נוסף זמין במאגר Maven של Google.

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

מגניב

plugins {
    id("com.android.lint")
}
dependencies {
    lintChecks "androidx.lint:lint-gradle:1.0.0-alpha05"
}

Kotlin

plugins {
    id("com.android.lint")
}
dependencies {
    lintChecks("androidx.lint:lint-gradle:1.0.0-alpha05")
}

מידע נוסף על יחסי תלות זמין במאמר הוספת יחסי תלות ל-build.

משוב

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

דיווח על בעיה חדשה

מידע נוסף זמין במסמכי התיעוד של Issue Tracker.

אין הערות לגבי הגרסה של הארטיפקט הזה.

גירסה 1.0

גרסה 1.0.0-alpha05

20 במאי 2025

androidx.lint:lint-gradle:1.0.0-alpha05 משוחרר. גרסת 1.0.0-alpha05 מכילה את ההוספות האלה.

תכונות חדשות

  • מוסיפים בדיקה כדי להזהיר מפני שימוש ב-configurations.create וב-configurations.maybeCreate, כי הם גורמים להטמעה מיידית של ההגדרה הזו החל מגרסה 8.14 של Gradle, ולכן צריך להחליף אותם ב-configurations.register.
  • הוספת בדיקה לזיהוי שימושים בממשקי API פנימיים של פלאגינים של Kotlin Gradle
  • מוסיפים בדיקה כדי לזהות שימוש ב-evaluationDependsOn וב-evaluationDependsOnChildren, כי השימוש בהם לא בטוח עם התכונה 'פרויקטים מבודדים'.

גרסה 1.0.0-alpha04

‫23 באפריל 2025

androidx.lint:lint-gradle:1.0.0-alpha04 משוחרר. הגרסה 1.0.0-alpha04 מכילה את ההוספות האלה.

תכונות חדשות

  • מומלץ להוסיף בדיקה לקריאות Provider<String>.toString שנשלחות בטעות, כי סביר להניח שהן באגים.
  • הוספת בדיקה כדי לזהות שימוש בשיטות, במאפיינים ובשדות שמגיעים מסוגי נתונים פנימיים.

תיקוני באגים

  • צריך לתקן את הבדיקה של GradleProjectIsolation כדי לאפשר שימוש ב-Project.isolated.
  • תיקון הבדיקה של WithTypeWithoutConfigureEach כדי לזהות שימוש ב-Project.tasks.withType<Task>() ללא configureEach.
  • תיקון הבדיקה InternalGradleApiUsage כדי לזהות שימושים מוגדרים במלואם של ממשקי API פנימיים.

גרסה 1.0.0-alpha03

11 בדצמבר 2024

androidx.lint:lint-gradle:1.0.0-alpha03 משוחרר. הגרסה 1.0.0-alpha03 כוללת את ההוספות האלה.

תכונות חדשות

  • כדאי לזהות קריאות ל-Provider<>.toString, כי כמעט תמיד מדובר בבאג.
  • צריך לתפוס קריאות לפונקציות ההרחבה של האוספים ב-Kotlin ב-TaskContainer, כי הן גורמות ליצירה מיידית של Task.
  • צריך לתפוס קריאות ל-ConfigurableFileCollection.from עם העברה של Configuration, כי הן גורמות לפתרון מוקדם של ההגדרה, ומציעות להשתמש ב-project.files(configuration) או ב-configuration.incoming.artifactView {}.files.
  • זיהוי שימושים ב-Property<File> והצעה להשתמש ב-RegularFileProperty או ב-DirectoryProperty, כי הוא אוכף את השימוש בספרייה לעומת הקובץ.

גרסה 1.0.0-alpha02

4 בספטמבר 2024

androidx.lint:lint-gradle:1.0.0-alpha02 משוחרר. הגרסה 1.0.0-alpha02 כוללת את ההוספות האלה.

תכונות חדשות

  • הוספנו בדיקה לממשק ה-API GradleRunner.withPluginClasspath שאינו מומלץ.
  • הוספנו בדיקות לממשקי API שבעיות בהגדרה עצלה, על ידי סימון קריאות ל-TaskContainer.withType בלי לקרוא ל-configureEach.
    • הוספנו בדיקות לממשקי API שבעיותיים לבידוד פרויקטים ב-Gradle, על ידי סימון קריאות ל-Project.getRootProject,‏ Project.findProject,‏ Project.getParent,‏ Project.findProperty,‏ Project.getProperties,‏ Project.hasProperty,‏ Project.property.

גרסה 1.0.0-alpha01

21 בפברואר 2024

androidx.lint:lint-gradle:1.0.0-alpha01 משוחרר. גרסה 1.0.0-alpha01 מכילה את ההוספות האלה.

תכונות חדשות

  • קבוצה ראשונית של בדיקות איתור שגיאות בקוד (lint) לכותבי הפלאגין של Gradle, שיעזרו להם לזהות שגיאות בקוד. הם אמורים לשמש בפרויקטים של Gradle שחלים עליהם java-gradle-plugin. הוא יזהה שימוש בממשקי API פנימיים של Gradle ושל הפלאגין של Android Gradle, ותצורה של משימות מיידיות.