【flutter运行时项目中第三方库与系统环境中jdk版本冲突问题】

报错信息信息示例:

复制代码
A problem occurred configuring project ':geolocator_android'.
> Could not resolve all artifacts for configuration ':geolocator_android:classpath'.
> Could not resolve com.android.tools.build:gradle:7.4.2.
Required by:
project :geolocator_android
> No matching variant of com.android.tools.build:gradle:7.4.2 was found. The consumer was configured to find a runtime of a library compatible with Java 8, packaged as a jar, and its dependencies declared externally but:
- Variant 'apiElements' capability com.android.tools.build:gradle:7.4.2 declares a library, packaged as a jar, and its dependencies declared externally:
- Incompatible because this component declares an API of a component compatible with Java 11 and the consumer needed a runtime of a component compatible with Java 8
- Variant 'javadocElements' capability com.android.tools.build:gradle:7.4.2 declares a runtime of a component, and its dependencies declared externally:
- Incompatible because this component declares documentation and the consumer needed a library
- Other compatible attributes:
- Doesn't say anything about its target Java version (required compatibility with Java 8)
- Doesn't say anything about its elements (required them packaged as a jar)
- Variant 'runtimeElements' capability com.android.tools.build:gradle:7.4.2 declares a runtime of a library, packaged as a jar, and its dependencies declared externally:
- Incompatible because this component declares a component compatible with Java 11 and the consumer needed a component compatible with Java 8
- Variant 'sourcesElements' capability com.android.tools.build:gradle:7.4.2 declares a runtime of a component, and its dependencies declared externally:
- Incompatible because this component declares documentation and the consumer needed a library
- Other compatible attributes:
- Doesn't say anything about its target Java version (required compatibility with Java 8)
- Doesn't say anything about its elements (required them packaged as a jar)
> Failed to notify project evaluation listener.
> Could not get unknown property 'android' for project ':geolocator_android' of type org.gradle.api.Project.
> Could not get unknown property 'android' for project ':geolocator_android' of type org.gradle.api.Project.

通过翻译得知是因为使用与项目Java版本不兼容的Gradle插件时。com.android.tools.build:gradle:7.4.2 需要Java 11来运行,项目或环境被配置为使用Java 8。

解决方案:

1.要确保你的gradle-wrapper.properties文件中的Gradle版本与你的Android Gradle插件版本兼容。

2.升级Java版本或降级Gradle插件版本(最好是能够升级jdk版本)

2-1.升级jdk。安装好jdk11后配置好系统环境变量,把Android studio的jdk路径改为jdk11的路径。(目前最新版本的Android studio koala似乎不能修改jdk路径了,博主安装后没找到在哪里设置)

3.修改好jdk后重启Android studio

相关推荐
喵个咪9 小时前
GoWind ShortPlay 拆解:Flutter 沉浸式 Feed 的播放器工程——生命周期、手势状态机与游客降级
前端·flutter·架构
恋猫de小郭1 天前
Flutter 的文字为什么比 SwiftUI 更细?问题主要在 Skia 的 256 项查找表里
android·前端·flutter
好的佩奇2 天前
Dart 之类型系统
flutter·dart
恋猫de小郭2 天前
Dart 3.15 新特性:this 终于支持类型提升了
android·前端·flutter
FungLeo3 天前
成为全栈·Flutter App 篇·主题与可访问性:深浅色、大字号和触控体验
flutter·移动开发·深色模式·可访问性·成为全栈·大字号适配
用户95421573334854 天前
只是选个照片,怎么留下了这么多访问记录?Flutter 图片选择器排查与优化实录
flutter
FungLeo4 天前
成为全栈·Flutter App 篇·第四批复盘:复用了什么,移动端又新增了什么
flutter·移动开发·跨端开发·成为全栈·api契约·全栈复盘
jason.zeng@15022074 天前
使用vscode+flutter开发android程序(入门)
android·vscode·flutter
jason.zeng@15022074 天前
Flutter 项目标准分层目录(repository/dto/page,对齐后端思想)
flutter