Я пытаюсь запустить приложение flutter через 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
}
}
Но все равно не работает. Пожалуйста помоги. Спасибо.
да, так как через несколько недель google () должен быть первым в проекте build.gradle, поскольку jcenter больше не имеет копий библиотек
Да, я знаю, я обновил свой ответ на gradle.build
Возможный дубликат Сборка Android CI: не удалось найти aapt2-proto.jar
Я не знаю почему, но в 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'
}
}
Поэтому я не знаю, зачем мне менять файлы библиотеки. Ты знаешь почему? Спасибо
В основном проблема с флаттером, но основная причина не в трепетании. Отметьте этот ответ, вы можете легко заставить его работать, переключившись на мастер-канал.
Может это поможет: stackoverflow.com/a/52944600/4255978