Cordova 打包JDK配置问题

2021-06-18 Web 10

今天在打包 Cordova 的时候报了一个错:

问题很明显,是JDK版本不对的问题,该版本的Cordova仅仅支持JDK8,为了验证这个问题,找到Cordova Lib下的 check_reqs.js 找到关键报错代码:

由此看出,该版本的 Cordova 仅仅支持 JDK1.8,甚至更高版本的 JDK 都不能兼容。

解决思路:

1.注释Cordova报错关键代码,猜测能够支持更高版本的JDK

2.切换本机JDK版本

实践:

首先想到了最快速的解决办法,注释掉报错的关键代码。但这个方法治标不治本,并且存在风险,但是一个临时的最快解决方案,实践过后,虽然跳过了JDK校验,但是依然报其他错,所以该方法不可行。

其次想到的方案就是替换本地JDK,最开始想到在JDK版本的切换:

命令行中输入:

~/.bash_profile

在环境变量中配置:

export JAVA_BASE_HOME=/Library/Java/JavaVirtualMachines

export JAVA_8_HOME=$JAVA_BASE_HOME/jdk1.8.0_212.jdk/Contents/Home

export JAVA_16_HOME=$JAVA_BASE_HOME/jdk-16.0.1.jdk/Contents/Home

export JAVA_HOME=$JAVA_8_HOM

保存生效:

source ~/.bash_profile

重新查看 JDK 版本:

java -version

确实已经切换回了 JDK1.8。但是坑就在这,结果打包依然报错,错误和原来一样JDK版本不对,重启电脑,仍然一样。

无奈之下只能彻底卸载本机JDK,重新安装1.8:

命令行输入:

sudo rm -fr /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin
sudo rm -fr /Library/PreferencesPanes/JavaControlPanel.prefpane

查看当前JDK版本:

ls /Library/Java/JavaVirtualMachines/

jdk1.8.0_212.jdk

删除当前版本文件夹

rm -rf  /Library/Java/JavaVirtualMachines/ jdk1.8.0_212.jdk

重新下载JDK1.8安装

https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html

记得如果jdk1.8和之前小版本的不一样,重新修改环境变量

打包,完成!

虽然不知道切换JDK版本下 cordova 打包依然报错,但是问题最终解决了,比较直接,直接删除JDK,重新安装。

发布评论

© 欧大 All Rights Reserved

Theme by WordPress