Исключение при инициализации флаттера - PullRequest
0 голосов
/ 02 ноября 2018

Я пытаюсь запустить приложение флаттера через Android Studio 3.2, но не работает.

Я перепробовал слишком много идей и решений, но все еще не работал.

Linux Ubuntu 18.04

flutter doctor
[✓] Flutter (Channel beta, v0.9.4, on Linux, locale cs_CZ.UTF-8)
[✓] Android toolchain - develop for Android devices (Android SDK 28.0.3)
[✓] Android Studio (version 3.2)
[✓] Connected devices (1 available)

• No issues found!

Ошибка:

Launching lib/main.dart on Android SDK built for x86 in debug mode...
Initializing gradle...
Resolving dependencies...
Finished with error: Please review your Gradle project setup in the android/ folder.
* Error running Gradle:
Exit code 1 from: /media/hdd/Projects/apps/flutter_app_new/android/gradlew app:properties:
Starting a Gradle Daemon, 1 busy Daemon could not be reused, use --status for details

Project evaluation failed including an error in afterEvaluate {}. Run with --stacktrace for details of the afterEvaluate {} error.

FAILURE: Build failed with an exception.

* Where:
Build file '/media/hdd/Projects/apps/flutter_app_new/android/app/build.gradle' line: 25

* What went wrong:
A problem occurred evaluating project ':app'.
> Could not resolve all files for configuration 'classpath'.
   > Could not find lint-gradle-api.jar (com.android.tools.lint:lint-gradle-api:26.1.2).
     Searched in the following locations:
         https://jcenter.bintray.com/com/android/tools/lint/lint-gradle-api/26.1.2/lint-gradle-api-26.1.2.jar

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 9s

Я установил gradle через apt install gradle и запустил gradle --stacktrace

gradle --stacktrace
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.gradle.internal.reflect.JavaMethod (file:/usr/share/gradle/lib/gradle-base-services-3.4.1.jar) to method java.lang.ClassLoader.getPackages()
WARNING: Please consider reporting this to the maintainers of org.gradle.internal.reflect.JavaMethod
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
Starting a Gradle Daemon (subsequent builds will be faster)
:help

Welcome to Gradle 3.4.1.

To run a build, run gradle <task> ...

To see a list of available tasks, run gradle tasks

To see a list of command-line options, run gradle --help

To see more detail about a task, run gradle help --task <task>

BUILD SUCCESSFUL

Я попытался изменить версию gradle в gradle-wrapper.properties от

distributionUrl=https\://services.gradle.org/distributions/gradle-4.4-all.zip

до

distributionUrl=https\://services.gradle.org/distributions/gradle-4.6-all.zip

gradle.build

{
buildscript {
    repositories {
        google()
        jcenter()
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.2'
    }
}

allprojects {
    repositories {
        google()
        jcenter()
    }
}

rootProject.buildDir = '../build'
subprojects {
    project.buildDir = "${rootProject.buildDir}/${project.name}"
}
subprojects {
    project.evaluationDependsOn(':app')
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

} 

Но все еще не работает. Пожалуйста помоги. Спасибо.

Ответы [ 2 ]

0 голосов
/ 02 ноября 2018

В основном это проблема с флаттером, но основная причина не флаттер . Отметьте этот ответ , вы можете легко заставить его работать, переключившись на главный канал.

0 голосов
/ 02 ноября 2018

Не знаю почему, но в app / build.gradle в строке 25 у меня есть

применяется от: "$ flutterRoot / packages / flutter_tools / gradle / flutter.gradle"

Так что мне пришлось изменить файл в библиотеке флаттера! в файле flutter.gradle у меня было

buildscript {
    repositories {
        jcenter() 
        maven {
            url 'https://dl.google.com/dl/android/maven2'
        }
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.2'
    }
}

изменить на это

buildscript {
    repositories {
        maven {
            url 'https://dl.google.com/dl/android/maven2'
        }
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.2'
    }
}

Так что я не знаю, почему я должен менять библиотечные файлы. Ты знаешь почему? Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...