Mac Flutter配置问题: Kotlin could not find the required JDK tools in the Java installation

Mac Android Studio 默认配置JDK环境,今天配置Maven环境时,在 Oracle 官网下载了最新的JDK 安装包,安装完毕之后。发现Flutter项目无法运行,报错信息为:
 

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':business_hotelbundle:kaptGenerateStubsDebugKotlin'.
> Kotlin could not find the required JDK tools in the Java installation '/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home' used by Gradle. Make sure Gradle is running on a JDK, not JRE.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 27s
Exception: Gradle task assembleDebug failed with exit code 1

对此很是不解,后续折腾了很久也无法解决。

在 bash_profile 文件配置了JAVA_HOME 参数后,执行了一次 flutter doctor 在提示中发现了一句信息:

Unable to find bundled Java version on Flutter

以此为切入点,分析原因,寻求解决办法。
原因:猜测是此次的JDK安装将jre环境搞出了问题。

解决方案:命令行执行一下命令

cd /Applications/Android\ Studio.app/Contents/jre
ln -s ../jre jdk
ln -s "/Library/Internet Plug-Ins/JavaAppletPlugin.plugin" jdk
flutter doctor -v

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Flutter是一种跨平台的移动应用开发框架,由Google开发。它使用Dart语言编写,并且可以同时在iOS和Android平台上构建高性能的原生应用程序。 关于你提到的错误信息"Cannot execute C:\Program Files\Java\jdk1.8.0_291\bin\java to determine the version",这个错误通常是由于Flutter无法执行Java命令来确定Java版本引起的。这可能是由于以下几个原因导致的: 1. Java环境未正确配置:请确保你已经正确安装了Java Development Kit(JDK)并将其添加到系统环境变量中。你可以通过在命令行中运行`java -version`来验证Java是否正确安装和配置。 2. Java路径错误:请检查Java的安装路径是否正确,并确保路径中不包含任何特殊字符或空格。 3. 系统权限问题:如果你没有足够的权限来执行Java命令,那么你可能会遇到这个错误。请确保你具有执行Java命令的权限。 如果你已经确认Java环境正确配置,并且仍然遇到这个问题,你可以尝试以下解决方法: 1. 检查系统环境变量:确保`JAVA_HOME`和`Path`环境变量已正确设置。`JAVA_HOME`应该指向JDK的安装目录,而`Path`应该包含JDK的`bin`目录。 2. 重新安装Java:尝试重新安装Java Development Kit,并确保按照官方文档的指示进行操作。 3. 检查防火墙和杀毒软件:有时防火墙或杀毒软件可能会阻止Flutter执行Java命令。请检查你的防火墙和杀毒软件设置,确保它们不会干扰Flutter的运行。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值