app_plugin_loader
فلاتر

رفع خطای 'app_plugin_loader' در Flutter

  • 1403/09/14

رفع خطای 'app_plugin_loader' در Flutter: راهنمای به‌روزرسانی Gradle Plugin و جلوگیری از مشکلات آینده

این خطا زمانی به وجود می‌آید که Flutter از یک روش قدیمی و منسوخ‌شده برای بارگذاری پلاگین‌های Gradle استفاده می‌کند...

پیام خطا:

"Applying Flutter's app_plugin_loader Gradle plugin imperatively using the apply script method which is deprecated, will be removed in a future release."

دلایل خطا:

  1. استفاده از نسخه قدیمی Gradle یا پلاگین Flutter.
  2. به‌روزرسانی نسخه Flutter یا پلاگین‌های آن.
  3. استفاده از پلاگین‌های شخص ثالث ناسازگار با نسخه‌های جدید Gradle.

راه‌حل‌ها بر اساس مستندات رسمی

مرحله 1: ویرایش فایل `settings.gradle`

pluginManagement {
    def flutterSdkPath = {
        def properties = new Properties()
        file("local.properties").withInputStream { properties.load(it) }
        def flutterSdkPath = properties.getProperty("flutter.sdk")
        assert flutterSdkPath != null, "flutter.sdk not set in local.properties"
        return flutterSdkPath
    }()
    includeBuild("$flutterSdkPath/packages/flutter_tools/gradle")
    repositories {
        google()
        mavenCentral()
        gradlePluginPortal()
    }
}
plugins {
    id "dev.flutter.flutter-plugin-loader" version "1.0.0"
    id "com.android.application" version "7.3.0" apply false
    id "org.jetbrains.kotlin.android" version "1.7.10" apply false
}

مرحله 2: ویرایش فایل `build.gradle`

بخش `buildscript` را به‌طور کامل حذف کنید.

buildscript {
    ext.kotlin_version = '{kotlinVersion}'
    repositories {
        google()
        mavenCentral()
    }
    dependencies {
        classpath "org.jetbrains.kotlin:gradle-plugin:$kotlin_version"
    }
}

مرحله 3: ویرایش فایل `app/build.gradle`

حذف کد زیر:

def flutterRoot = localProperties.getProperty('flutter.sdk')
if (flutterRoot == null) {
    throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.")
}

و جایگزین کردن با:

plugins {
    id "com.android.application"
    id "kotlin-android"
    id "dev.flutter.flutter-gradle-plugin"
}

حذف موارد `apply plugin`:

apply plugin: 'com.android.application'
apply plugin: 'com.jetbrains.kotlin.android'
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"

حذف وابستگی‌ها در بخش `dependencies`:

dependencies {
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
}

مرحله 4: پاکسازی Cache و بازسازی پروژه

مراحل زیر را انجام دهید:

  1. پوشه `.gradle/caches` را حذف کنید.
  2. ترمینال را باز کنید و دستور زیر را اجرا کنید:
./gradlew build

منبع

دیدگاه
نوشتن یک دیدگاه

آدرس ایمیل شما منتشر نخواهد شد، فیلدهای الزامی علامت گذاری شده است*.

عضویت در خبرنامه

رایگان ثبت نام کنید و اولین نفری باشید که از پست های جدید مطلع می شوید.