Mac上 flutter doctor 遇到的 Android license status unknown.的问题

456 阅读1分钟

前言

搭建flutter环境时,在Android Studio 和 flutter SDK 都安装好的情况下,执行flutter doctor时,遇到以下问题 image.png

二、 解决问题

出现Android license status unknown.问题后,flutter doctor推荐的解决方式:

flutter doctor --android-licenses

执行以后,到这来问题来了,出现错误:

image.png

很明显就是Java9及更高版本才会出现这个问题,因为Java9之后干掉了一些库,如果写过Springcloud的同学应该会知道,需要添加jaxb相关依赖,点击链接下载依赖包

链接: pan.baidu.com/s/1ZbSoN0zC… 密码: mhgd

然后command + shift + g 输入路径 /Users/zzy/Library/Android/sdk/tools 在AndroidSDK目录的工具文件夹下面创建一个名为“ jaxb”的文件夹,将上面的jar包导入,如果下载后的jar具有版本号可以将版本号删除掉,如:activation-1.1.1.jar可以重命名为activation.jar,如下所示 image.png 完成之后我们使用Sbuline / VS Code 的文本编辑工具打开sdkmanager文件进行编辑,路径:(/Users/zzy/Library/Android/sdk/tools/bin/sdkmanager)打开后,在大约66行那里我们会看到这样的一行代码:

CLASSPATH=$APP_HOME/lib/dvlib-26.0.0-dev.jar:$APP_HOME/lib/jimfs-1.1.jar:$APP_HOME/lib/jsr305-1.3.9.jar:$APP_HOME/lib/repository-26.0.0-dev.jar:..

对应的将其改为

CLASSPATH=$APP_HOME/jaxb/activation.jar:$APP_HOME/jaxb/jaxb-impl.jar:$APP_HOME/jaxb/jaxb-xjc.jar:$APP_HOME/jaxb/jaxb-core.jar:$APP_HOME/jaxb/jaxb-jxc.jar:$APP_HOME/jaxb/jaxb-api.jar:$APP_HOME/jaxb/istack-commons-runtime.jar:$APP_HOME/lib/dvlib-26.0.0-dev.jar:$APP_HOME/lib/jimfs-1.1.jar:$APP_HOME/lib/jsr305-1.3.9.jar:$APP_HOME/lib/repository-26.0.0-dev.jar:$APP_HOME/lib/j2objc-annotations-1.1.jar:$APP_HOME/lib/layoutlib-api-26.0.0-dev.jar:$APP_HOME/lib/gson-2.3.jar:$APP_HOME/lib/httpcore-4.2.5.jar:$APP_HOME/lib/commons-logging-1.1.1.jar:$APP_HOME/lib/commons-compress-1.12.jar:$APP_HOME/lib/annotations-26.0.0-dev.jar:$APP_HOME/lib/error_prone_annotations-2.0.18.jar:$APP_HOME/lib/animal-sniffer-annotations-1.14.jar:$APP_HOME/lib/httpclient-4.2.6.jar:$APP_HOME/lib/commons-codec-1.6.jar:$APP_HOME/lib/common-26.0.0-dev.jar:$APP_HOME/lib/kxml2-2.3.0.jar:$APP_HOME/lib/httpmime-4.1.jar:$APP_HOME/lib/annotations-12.0.jar:$APP_HOME/lib/sdklib-26.0.0-dev.jar:$APP_HOME/lib/guava-22.0.jar

保存后再次执行:

/Users/zzy/Library/Android/sdk/tools/bin/sdkmanager    

路劲可能存在差异,这是我电脑的路径,这样就可以了,接下来我们再执行

flutter doctor --android-licenses

然后按照提示不断y然后回车就好了

image.png

最后执行

flutter doctor

如下所示,最终解决 image.png

.ashrc中配置的环境变量

记录一下我现在为flutter配置的环境变量,以备不时之需

# Flutter镜像配置
export PUB_HOSTED_URL=https://pub.flutter-io.cn
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn

# Flutter 环境变量
export PATH="$PWD/flutter/bin:$PATH"

# Add RVM to PATH for scripting. Make sure this is the last PATH variable change.
export PATH="$PATH:$HOME/.rvm/bin"