我的环境如下:
- gradle 版本:
gradle -v //java的版本也直接输出来了。
Gradle 5.6.2------------------------------------------------------------Build time: 2019-09-05 16:13:54 UTCRevision: 55a5e53d855db8fc7b0e494412fc624051a8e781Kotlin: 1.3.41Groovy: 2.5.4Ant: Apache Ant(TM) version 1.9.14 compiled on March 12 2019JVM: 11.0.11 (Oracle Corporation 11.0.11+9-LTS-194)OS: Windows 10 10.0 amd64C:\Users\nothing>java -versionjava version "11.0.11" 2021-04-20 LTSJava(TM) SE Runtime Environment 18.9 (build 11.0.11+9-LTS-194)Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.11+9-LTS-194, mixed mode)
- Flutte版本
flutter doctor -v //里面的红×可以无视,因为我不使用android studio开发,因为太卡了。
C:\Users\Nothing>flutter doctor -v[√] Flutter (Channel stable, 1.20.3, on Microsoft Windows [Version 10.0.19045.3086], locale zh-CN) • Flutter version 1.20.3 at E:\flutter_windows_1.20.3-stable\flutter • Framework revision 216dee60c0 (2 years, 9 months ago), 2020-09-01 12:24:47 -0700 • Engine revision d1bc06f032 • Dart version 2.9.2 • Pub download mirror https://pub.flutter-io.cn • Flutter download mirror https://storage.flutter-io.cn[√] Android toolchain - develop for Android devices (Android SDK version 34.0.0) • Android SDK at C:\Users\Liu Shaoting\AppData\Local\Android\Sdk • Platform android-34, build-tools 34.0.0 • Java binary at: E:\AndroidStudio\jre\bin\java • Java version OpenJDK Runtime Environment (build 17.0.6+0-b2043.56-9586694) • All Android licenses accepted.[!] Android Studio • Android Studio at E:\AndroidStudio X Flutter plugin not installed; this adds Flutter specific functionality. X Dart plugin not installed; this adds Dart specific functionality. • android-studio-dir = E:\AndroidStudio • Java version OpenJDK Runtime Environment (build 17.0.6+0-b2043.56-9586694)[√] Connected device (1 available) • Amazon Fire Phone (mobile) • emulator-5554 • android-x64 • Android 9 (API 28)! Doctor found issues in 1 category.
Flutter项目构建及运行过程不再赘述。由于我需要重现别人的issue,所以就需要使用这些很老的版本。Flutter 1.22.0以上的版本直接创建项目,然后运行项目就可以了。但是在Flutter 1.22.0版本以后就需要做一下配置操作(这个不太确定,根据我的经验是这样的。)。OK, 当我在Flutter1.20.3创建的项目中使用flutter run如运行时,意外发生了,这个意外如下:
这个错误我找了stackflow上的解决方法,大家都说是gradle版本和java的版本不匹配导致的。但是我从java8换到了java17,从gradle2.14换到gradle7.5.1。依然没有解决我的问题。gradle和java版本对照表可以查看here。然后自己摸索,试了各种方法,最后得到了答案。
解决方法如下(对我有效):
1. 在你的项目中,找到android文件夹下的gradle.properties文件,打开这个文件。内容如下,里面的内容都是在项目构建过程中自动生成的。
org.gradle.jvmargs=-Xmx1536M
android.enableR8=true
android.useAndroidX=true
android.enableJetifier=true
2. 在这个gradle.properties文件中增加你的java路径。格式是org.gradle.java.home=C:\\Program Files\\Java\\jdk-11.0.11。于是,gradle.properties文件的内容变为。
org.gradle.jvmargs=-Xmx1536M
android.enableR8=true
android.useAndroidX=true
android.enableJetifier=true
org.gradle.java.home=C:\\Program Files\\Java\\jdk-11.0.11
保存文件。最后flutter run就OK了。
注: 这种方法对本人有效,可以一起交流。
来源地址:https://blog.csdn.net/csdn9874123/article/details/131213760