无法运行我的第一个颤振应用程序
Posted
技术标签:
【中文标题】无法运行我的第一个颤振应用程序【英文标题】:having trouble to run my first flutter app 【发布时间】:2020-08-19 09:46:25 【问题描述】:当我尝试在 android studio 或命令行中使用 flutter run 运行颤振项目时遇到错误 它给了我这个错误
Exception in thread "main" java.net.SocketException: Unexpected end of file from server
at sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:851)
at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:678)
at sun.net.www.protocol.http.HttpURLConnection.doTunneling(HttpURLConnection.java:2055)
at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:183)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1564)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1492)
at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:263)
at org.gradle.wrapper.Download.downloadInternal(Download.java:58)
at org.gradle.wrapper.Download.download(Download.java:44)
at org.gradle.wrapper.Install$1.call(Install.java:61)
at org.gradle.wrapper.Install$1.call(Install.java:48)
at org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAccessManager.java:65)
at org.gradle.wrapper.Install.createDist(Install.java:48)
at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:128)
at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:61)
以错误结束:Gradle 任务 assembleDebug 失败,退出代码为 1
flutter doctor -v的输出
[√] Flutter (Channel stable, v1.12.13+hotfix.9, on Microsoft Windows [Version 10.0.17134.1425], locale en-US) • Flutter 版本 1.12.13+hotfix.9 位于 C:\src\flutter • 框架修订 f139b11009(5 周前),2020-03-30 13:57:30 -0700 • 引擎修订版 af51afceb8 • Dart 版本 2.7.2
[√] Android 工具链 - 为 Android 设备开发(Android SDK 版本 29.0.3) • Android SDK 位于 C:\Users\win10\AppData\Local\Android\android-sdk • Android NDK 位置未配置(可选;对原生分析支持有用) • 平台 android-29,构建工具 29.0.3 • ANDROID_HOME = C:\Users\win10\AppData\Local\Android\android-sdk • Java 二进制文件位于:C:\Program Files\Android\Android Studio\jre\bin\java • Java 版 OpenJDK 运行时环境(内部版本 1.8.0_212-release-1586-b04) • 接受所有 Android 许可证。
[√] Android Studio(3.6版) • C:\Program Files\Android\Android Studio 中的 Android Studio • Flutter 插件版本 45.1.1 • Dart 插件版本 192.7761 • Java 版 OpenJDK 运行时环境(内部版本 1.8.0_212-release-1586-b04)
[√] VS Code,64 位版本(版本 1.34.0) • C:\Program Files\Microsoft VS Code 中的 VS 代码 • Flutter 扩展版本 3.2.0
[√] 已连接设备(1 个可用) • 为 x86 构建的 Android SDK • emulator-5554 • android-x86 • Android 8.1.0 (API 27)(模拟器)
• 未发现任何问题!
PS: 不久前我遇到了另一个问题,所以我像这样更改了 flutter.gradle 文件
buildscript
repositories
google()
jcenter()
mavenCentral()
dependencies
classpath 'com.android.tools.build:gradle:3.5.0'
【问题讨论】:
【参考方案1】:您的 Gradle 文件似乎已损坏。
这是你需要做的:
打开 $HOME/.gradle/wrapper/dists 并删除 gralde-xxx-all 。然后执行命令:再次flutter run。
更多信息here。
【讨论】:
对为 x86 构建的设备 Android SDK 使用硬件渲染。如果您得到图形工件,请考虑使用“--enable-software-rendering”启用软件渲染。在调试模式下在为 x86 构建的 Android SDK 上启动 lib\main.dart...正在运行 Gradle 任务“assembleDebug”...(这需要很长时间。)我只是按照你说的做了,它卡在这里 我以前也遇到过这种情况。您要么需要清理 HDD 中的更多内容(这是我的情况),要么需要修复一些网络设置。这里有 4 个有用的链接。 ***.com/questions/59516408/…github.com/flutter/flutter/issues/27310github.com/flutter/flutter/issues/47392***.com/questions/58238026/…【参考方案2】:我要确切地说我是如何克服这个问题的。一些步骤可能不是必需的,但我做了所有这些:
-
卸载flutter和android studio
安装最新版本(android studio 和 flutter)
然后添加
行家 网址'http://download.flutter.io'
在你的 build.gradle 文件中
然后将编译和目标 sdk 版本更改为 29(只需找到它们并将 29 替换为 28 ) C:\Users\$USER\AndroidStudioProjects\$projectname\android\app\build.gradle 像这样
compileSdkVersion 29 targetSdkVersion 29
这就是我解决问题的方法。我希望它也适用于你们。
【讨论】:
告诉某人不要使用他们提出问题的语言或框架并不能回答问题。 是的,我找到了解决方案 谢谢!这是一个大大改进的答案。另外,当我留下那条评论时,我错过了你是 OP,所以把你的挫败感误认为是恶作剧。无论如何,感谢更新。【参考方案3】:进入您的项目文件夹并在
分级 包装 gradle-wrapper
从以下位置更改数字:
distributionUrl=https\://services.gradle.org/distributions/gradle-6.3-all.zip
【讨论】:
以上是关于无法运行我的第一个颤振应用程序的主要内容,如果未能解决你的问题,请参考以下文章