Cordova构建错误“对JDK 8('1.8。*')的要求检查失败!检测到的版本:11.0.2”

时间:2019-06-17 15:28:26

标签: java cordova ionic-framework

当我尝试使用ionic编译时,我的应用程序告诉我以下错误:

检查Java JDK和Android SDK版本 ANDROID_SDK_ROOT =未定义(推荐设置) ANDROID_HOME = / home / jmarroni / Android / SDK(已弃用) JDK 8('1.8。*')的需求检查失败!检测到的版本:11.0.2 检查您的ANDROID_SDK_ROOT / JAVA_HOME / PATH环境变量。 [ERROR]运行子进程cordova时发生错误。

尝试安装Java 1.8的早期版本,但无法识别更改。

3 个答案:

答案 0 :(得分:1)

我将所有信息放在一个地方:

  • Java JDK的版本8。我无法快速找到openjdk-8版本,所以我决定安装Oracle版本
  • 不需要设置JAVA_HOME
  1. 继续

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

  1. 下载:
jdk-8u251-linux-x64.tar.gz or newest 
  1. 使用oracle帐户登录

  2. /opt中将其解压缩

sudo cp ~/Desktop/jdk-8u251-linux-x64.tar.gz /opt
cd /opt
sudo tar xfz jdk-8u251-linux-x64.tar.gz
sudo ln -s jdk1.8.0_251 java
  1. java二进制文件指向所需的SDK

5.1。安装替代品

sudo update-alternatives --install /usr/bin/java java /opt/java/bin/java 2

5.2。激活它

sudo update-alternatives --config java

5.3。选择在步骤4.1中添加的条目。

There are 3 choices for the alternative java (providing /usr/bin/java).

  Selection    Path                                         Priority   Status
------------------------------------------------------------
* 0            /usr/lib/jvm/java-14-openjdk-amd64/bin/java   1411      auto mode
  1            /opt/java/bin/java                            2         manual mode
  2            /usr/lib/jvm/java-11-openjdk-amd64/bin/java   1111      manual mode
  3            /usr/lib/jvm/java-14-openjdk-amd64/bin/java   1411      manual mode

在这种情况下,键入1并按Enter

5.4。测试

类型:

java -version

预期输出类似于:

java version "1.8.0_251"
Java(TM) SE Runtime Environment (build 1.8.0_251-b08)
Java HotSpot(TM) 64-Bit Server VM (build 25.251-b08, mixed mode)
  1. javac二进制文件指向所需的SDK

6.1。安装替代品

sudo update-alternatives --install /usr/bin/javac javac /opt/java/bin/javac 2

6.2。激活它

sudo update-alternatives --config javac

6.3。选择在步骤6.1中添加的条目。

There are 2 choices for the alternative javac (providing /usr/bin/javac).

  Selection    Path                                          Priority   Status
------------------------------------------------------------
  0            /usr/lib/jvm/java-14-openjdk-amd64/bin/javac   1411      auto mode
* 1            /opt/java/bin/javac                            2         manual mode
  2            /usr/lib/jvm/java-14-openjdk-amd64/bin/javac   1411      manual mode

在这种情况下,键入1并按Enter

6.4。测试

类型:

javac -version

预期输出类似于:

javac 1.8.0_251

如果输出类似于“ java -version”的输出,请确保您在第6.1节中编写了正确的命令,并保留了原始帖子的“ c”。

答案 1 :(得分:0)

我遇到了同样的问题。就我而言,安装了两个不同的JDK

/ usr / lib / jvm $ default-java java-1.11.0-openjdk-amd64 java-11-openjdk-amd64 java-1.8.0-openjdk-amd64 java-8-openjdk-amd64 openjdk-11

  1. sudo update-alternatives --config java
  2. sudo update-alternatives --config javac

答案 2 :(得分:0)

为我工作。 请注意! 6.1:原始帖子有错字(缺少“ c”)。 该命令应为:“ sudo update-alternatives --install / usr / bin / javac javac / opt / java / bin / javac 2”