我安装了Flutter并设置了Android Studio。然后我在GitHub (https://github.com/flutter/flutter)上克隆了一个flutter的例子,并在Android Studio中启动它,但它警告我“Dart SDK未配置”,这也发生在我的同事身上。但如果我在Android Studio中创建一个新项目,就完全没有问题。

我所做的:

安装了颤振 安装了Android Studio,以及Flutter插件,包括Dart插件 在命令行中颤振运行正常,所有五个测试都通过了。(见下文)

[✓] Flutter (on Mac OS X 10.13.3 17D47, locale en-US, channel dev) • Flutter version 0.0.22 at /Users/katelyn/flutter • Framework revision 3001b3307d (7 days ago), 2018-01-30 11:37:15 -0800 • Engine revision 8f2d72b183 • Tools Dart version 2.0.0-dev.16.0 • Engine Dart version 2.0.0-edge.7af4db0ea091dddca6b2da851e6dda8d7f9467e8 [✓] Android toolchain - develop for Android devices (Android SDK 27.0.3) • Android SDK at /Users/katelyn/Library/Android/sdk • Android NDK location not configured (optional; useful for native profiling support) • Platform android-27, build-tools 27.0.3 • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-915-b08) [✓] iOS toolchain - develop for iOS devices (Xcode 9.2) • Xcode at /Applications/Xcode.app/Contents/Developer • Xcode 9.2, Build version 9C40b • ios-deploy 1.9.2 • CocoaPods version 1.4.0 [✓] Android Studio (version 3.0) • Android Studio at /Applications/Android Studio.app/Contents • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-915-b08) [✓] Connected devices • Android SDK built for x86 • emulator-5554 • android-x86 • Android 7.1.1 (API 25) (emulator)

上周,我可以通过命令行运行他们的例子(在那个目录下),

flutter run 

但现在我显示一些错误与Gradle。

Launching lib/main.dart on Android SDK built for x86 in debug mode... Initializing gradle... 0.7s Resolving dependencies... Error running Gradle: Exit code 1 from: /Users/katelyn/AndroidStudioProjects/flutter/examples/flutter_gallery/android/gradlew app:properties: FAILURE: Build failed with an exception. Where: Build file '/Users/katelyn/AndroidStudioProjects/flutter/examples/flutter_gallery/android/app/build.gradle' line: 20 What went wrong: A problem occurred evaluating project ':app'. 3 Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Get more help at https://help.gradle.org BUILD FAILED in 0s Please review your Gradle project setup in the android/ folder.


当前回答

这通常发生在在其他机器上创建的项目上。要在Android Studio 3.1.3上修复此问题:

文件->设置(ctrl+alt+s) 语言和框架-> Dart 勾选“为项目启用Dart支持…” 在“Dart SDK路径”中单击“…”并导航到flutter SDK目录。在这个目录下你会找到“bin/cache/dart-sdk”。这是你应该使用的dart sdk路径。 点击“应用” 关闭项目并再次打开它(有时需要这一步,有时不需要)

编辑2019-05-28 -我不知道这个选项启用了多长时间,但我注意到在Android Studio 3.4中,在其他机器上开发的项目中启用Dart支持更容易。

用Gradle文件同步项目 构建完成后,单击编辑器面板顶部的“启用dart支持”。

其他回答

我有同样的Dart SDK问题,我使用这个解决方案。为了解决这个问题,而不必每次都使用终端来测试我的程序,我遵循的步骤如下。

Find flutter SDK path. I did so by typing in echo $PATH and finding the path with /flutter/bin. Assuming your path is something like .../flutter/bin just add on /cache/dart-sdk/bin making it .../flutter/bin/cache/dart-sdk/bin. This .../flutter/bin/cache/dart-sdk/bin is the location of your Dart SDK. Assuming you say the same Dart SDK is not configured error accompanied by something where you can configure your Dart SDK. You click the configure option and set .../flutter/bin/cache/dart-sdk as your SDK. That should fix your problem. If not head over to the next step. Open your Android Studio preferences(Command + ',') and go to Languages and Frameworks>Dart. Under the Dart menu, you should be able to enter your Dart SDK path.

我使用IntelliJ IDEA完成了这些步骤,所以它们应该是差不多的。如果这不起作用,有时做一个虚拟的Dart项目可以让事情重新工作。这为我解决了一个类似的问题。

出现此错误的原因可能是您没有安装Flutter,或者您使用的是较旧版本的Flutter 1.21。所以建议先检查一下以上的事情。如果以上原因都不是你犯错的原因,你可以按照下面的步骤来做,这可能会对你有所帮助。

进入文件—>设置 然后是语言和框架——>颤振

颤振SDK路径在这里应该为空。问题就在这里

复制Flutter SDK路径 将其粘贴到空文本字段中 Apply和OK

mac:

点击顶部的Android Studio ->点击首选项->语言和框架

->选择“颤振”

->浏览Flutter SDK路径下载链接["https://flutter.dev/docs/get-started/install/macos"]

->单击“确定” 享受! !

修改之前的答案,以反映新的变化:

自Flutter 1.21以来的更改

从Flutter 1.21开始,Flutter SDK包含完整的Dart SDK。 所以如果你安装了Flutter,你可能不需要明确下载Dart SDK,除非:

你不用颤振 您使用的是1.21之前版本的Flutter。 您希望减少磁盘空间需求 您希望Dart SDK分发渠道/版本与Flutter SDK中捆绑的渠道/版本更好地分离。

安装Dart SDK

就我个人而言,因为我主要在笔记本电脑上工作,我已经从开发工具所需的所有空间中卸载了我的主驱动器,将所有东西都移动到这个回答中所描述的外部驱动器上

轻松Dart SDK安装

AFAIK, Dart只依赖于系统$PATH变量中有$SDK/bin目录可用。 至于安装SDK本身,无论是Dart还是Flutter + Dart,我发现下载你想要的频道(稳定版、beta版或dev版)的.zip文件,将其解压到硬盘上的某个位置,并在$ path的早期包含SDK /bin目录的路径是正确的方法。 如Dart文档中所述

一个可能的问题

从命令行运行命令与在IDE(或其他GUI应用程序)中不同,因为GUI应用程序通常将配置存储在自己的配置文件中,而各种shell将其配置存储在shell启动文件中,使用$PATH变量来决定它是否了解给定的应用程序/命令。它还定义了查找命令的顺序。

除非GUI应用程序(在本例中是IDE)在启动程序中生成一个shell,并以这种方式填充环境,否则这两种配置可以完全独立,并指向不同的工具/路径/实用程序。

这可以解释你提到的场景:

但如果我在Android Studio中创建一个新项目,就完全没有问题。

你可以通过Android Studio中的shell环境来定义环境

文件->新项目设置->新项目设置->工具->终端

在这里,你可以告诉Android Studio IDE本身应该从哪个shell中获取环境(作为登录shell的路径),定义新变量并确保启用了shell Integration选项。

现在你可以有相同的(或不同的,如果你愿意)环境运行,例如,纯Dart项目通过命令行和颤振应用程序在IDE中运行,通过选择你应该已经在你的shell启动文件中定义的值。

Android Studio配置

注意:从Android Studio 4.2开始,ANDROID_SDK_HOME环境变量已弃用,并已被ANDROID_PREFS_ROOT取代

这些都是变化的主题,所以总是检查Android Studio配置指南和 Android SDK相关部分安装指南之前设置这些。 这并非总是必需的,但却是排除故障的好方法。

颤振通常安装(按插图)在。

C:\src\Flutter

对于Windows安装…

您可以尝试运行flutter doctor来解决安装问题。 还要运行flutter升级以获得最新版本的flutter和Dart sdk。

DART SDK可以在

/flutter/bin/cache/dart-sdk