颤振没有运行?

Posted

技术标签:

【中文标题】颤振没有运行?【英文标题】:Flutter is not running? 【发布时间】:2019-03-30 19:43:00 【问题描述】:

我在android studio中运行flutter时遇到了一些问题

这是我的错误 在调试模式下在 Moto C Plus 上启动 lib\main.dart... 正在初始化梯度... 解决依赖关系... 完成错误:请查看 android/ 文件夹中的 Gradle 项目设置。 * 运行 Gradle 时出错: 退出代码 1 来自:D:\FlutterPrograms\app\android\gradlew.bat app:properties: NDK 缺少“平台”目录。 如果您使用的是 NDK,请验证 ndk.dir 是否设置为有效的 NDK 目录。当前设置为 E:\Sdk\ndk-bundle。 如果您不使用 NDK,请从 ANDROID_NDK_HOME 或 local.properties 中取消设置 NDK 变量以删除此警告。

项目评估失败,包括 afterEvaluate 中的错误。使用 --stacktrace 运行,了解 afterEvaluate 错误的详细信息。

FAILURE:构建失败并出现异常。

在哪里: 构建文件 'D:\FlutterPrograms\app\android\app\build.gradle' 行:25

出了什么问题: 评估项目 ':app' 时出现问题。

无法解析配置“类路径”的所有工件。 找不到 lint-gradle-api.jar (com.android.tools.lint:lint-gradle-api:26.1.2)。 在以下位置搜索: https://jcenter.bintray.com/com/android/tools/lint/lint-gradle-api/26.1.2/lint-gradle-api-26.1.2.jar

尝试: 使用 --stacktrace 选项运行以获取堆栈跟踪。使用 --info 或 --debug 选项运行以获得更多日志输出。运行 --scan 以获得完整的见解。

通过https://help.gradle.org获得更多帮助

1 秒内构建失败

这是我的 buid.gradle 文件

    buildscript 
    repositories 
        maven 
            url 'https://dl.google.com/dl/android/maven2'
        
        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

这是我的 gradle 错误

    def localProperties = new Properties()
def localPropertiesFile = rootProject.file('local.properties')
if (localPropertiesFile.exists()) 
    localPropertiesFile.withReader('UTF-8')  reader ->
        localProperties.load(reader)
    


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.")


def flutterVersionCode = localProperties.getProperty('flutter.versionCode')
if (flutterVersionCode == null) 
    flutterVersionCode = '1'


def flutterVersionName = localProperties.getProperty('flutter.versionName')
if (flutterVersionName == null) 
    flutterVersionName = '1.0'


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

android 
    compileSdkVersion 27

    lintOptions 
        disable 'InvalidPackage'
    

    defaultConfig 
        // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
        applicationId "com.shanmukh.app"
        minSdkVersion 16
        targetSdkVersion 27
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    

    buildTypes 
        release 
            // TODO: Add your own signing config for the release build.
            // Signing with the debug keys for now, so `flutter run --release` works.
            signingConfig signingConfigs.debug
        
    


flutter 
    source '../..'


dependencies 
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'

【问题讨论】:

couldn't locate lint-gradle-api-26.1.2.jar for flutter project的可能重复 ***.com/questions/52945041/… 【参考方案1】:

过去几天提出了很多类似的问题,可以通过在构建脚本的repositories 块中的第一个位置添加google() 存储库来解决。 请参阅以下答案中的详细说明:

couldn't locate lint-gradle-api-26.1.2.jar for flutter project Could not find play-services-basement.aar https://***.com/a/52982816/6899896 Could not find com.android.tools.build:aapt2:3.2.0

Jcenter 中缺少库的根本原因在这里详细解释:https://***.com/a/50885939/6899896

【讨论】:

参见 ***.com/a/52947028/6899896 :除了项目的构建脚本(模块和应用程序级别)之外,您还需要修改 .flutter/packages/flutter_tools/gradle/flutter.gradle 以设置 repo google() first 和 jcenter() last 很抱歉一次又一次地打扰您。我对 Flutter 很陌生,我找不到名为 .flutter 的文件夹,其中 .flutter 文件夹和 flutter.gradle 文件夹在哪里 这应该是你安装Flutter的目录 谢谢您的回复。我会试试的。 它有效。非常感谢你的回复。你是天才。非常感谢。【参考方案2】:

在您的计算机中打开根flutter文件夹,然后打开该根文件夹中的gradle文件夹(例如C:\flutter\package\flutter_tool\gradle)并将'google()'添加到构建脚本。它为我解决了这个问题。

Flutter 根文件夹:

将“google()”添加到构建脚本中:

【讨论】:

【参考方案3】:

我找到了解决办法! 转到您的颤振文件夹。之后需要找到flutter.gradle。在我的电脑上: C:\src\flutter\packages\flutter_tools\gradle 用记事本或记事本打开flutter.gradle并更改 从这里构建脚本:

 repositories 
   jcenter()
    maven 
        url 'https://dl.google.com/dl/android/maven2'
        

到这里:

 repositories 
    maven 
        url 'https://dl.google.com/dl/android/maven2'
     
    jcenter()

【讨论】:

以上是关于颤振没有运行?的主要内容,如果未能解决你的问题,请参考以下文章

为啥我的 Contact.dart 没有运行? (颤振、飞镖、VS 代码)

我可以在没有 xcode 的情况下在 mac 上运行颤振吗?

运行没有权限的颤振项目时出错

IOS颤振构建没有创建,但它在android上运行

颤振运行->错误:没有名称为“keyboardDismissBehavior”的命名参数

在颤振构建网站后没有显示构建文件不工作显示空白