即使JRE 8安装在我的MAC OS Yosemite 10.10.3,而运行Android目前的工具在sdk -错误-“没有Java运行时目前,请求安装”会显示在终端-我如何解决这个问题?

我想安装Xamarin测试记录器-安装后 让我安装Android sdk SDK下载路径:Library/Developer/Xamarin/android-sdk 现在当我在工具文件夹中运行Android时,我得到了错误 没有Java运行时 我已经安装了JRE 8,并得到了验证 Java版本从他们的网站

有人能帮帮我吗!!


当前回答

如果你和我有同样的问题,我可以告诉你为什么会发生这种情况。我只是还不知道该怎么解决。

下面就是:

我在MacOS Big Sur上使用的是JDK 1.8版本。我不想安装更高版本的JDK,因为我所有的项目都运行在1.8上。但事情是这样的....在命令行中

java -version

返回:

openjdk version "1.8.0_302"
OpenJDK Runtime Environment (build 1.8.0_302-bre_2021_08_14_21_34-b00)
OpenJDK 64-Bit Server VM (build 25.302-b00, mixed mode)

但是一个稍有不同的命令(版本前缀是2个破折号而不是1)

java --version

返回以下错误:

Unrecognized option: --version
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

这是因为Java 8使用单破折号版本,之后的所有jdk都使用双破折号。

因此,当查找JAVA_HOME时,机器也使用双破折号并得到错误。

其他回答

博士TL;

对于JDK 11,请尝试以下方法:

为了干净利落地处理这个问题,我建议使用brew和jenv。

对于Java 11,请遵循以下2个步骤:

JAVA_VERSION=11
brew reinstall jenv 
brew reinstall openjdk@${JAVA_VERSION}
jenv add /usr/local/opt/openjdk@${JAVA_VERSION}/
jenv global ${JAVA_VERSION}

并将此添加到shell配置脚本的末尾~/。Bashrc或~/.zshrc

export PATH="$HOME/.jenv/bin:$PATH"
eval "$(jenv init -)"
export JAVA_HOME="$HOME/.jenv/versions/`jenv version-name`"

问题解决了!

然后重新启动shell并尝试执行java -version

注意:如果您遇到此问题,说明您当前的JDK版本不存在或配置错误(或者您只有JRE)。

因为听起来JAVA_HOME变量没有正确设置,所以请按照说明进行设置。

在MAC OSX 10.9上设置JAVA_HOME环境变量

我想一旦你设置了这个,它就会停止抱怨。

如果你和我有同样的问题,我可以告诉你为什么会发生这种情况。我只是还不知道该怎么解决。

下面就是:

我在MacOS Big Sur上使用的是JDK 1.8版本。我不想安装更高版本的JDK,因为我所有的项目都运行在1.8上。但事情是这样的....在命令行中

java -version

返回:

openjdk version "1.8.0_302"
OpenJDK Runtime Environment (build 1.8.0_302-bre_2021_08_14_21_34-b00)
OpenJDK 64-Bit Server VM (build 25.302-b00, mixed mode)

但是一个稍有不同的命令(版本前缀是2个破折号而不是1)

java --version

返回以下错误:

Unrecognized option: --version
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

这是因为Java 8使用单破折号版本,之后的所有jdk都使用双破折号。

因此,当查找JAVA_HOME时,机器也使用双破折号并得到错误。

2021的解决方案

博士TL;

brew install temurin

细节

在M1 Mac/Apple Silicon(运行Big Sur)上,我已经安装了openjdk。正如Mohammed在之前的回答中指出的那样,openjdk只包含brew,因此需要添加符号链接。

在此之后,它解决了No Java Runtime present错误,但rJava抱怨缺少libjvm。Dylib和现有的库是错误的架构:

.onLoad failed in loadNamespace() for 'rJava', details:
  call: dyn.load(jvm, FALSE)
  error: unable to load shared object '/opt/homebrew/Cellar/openjdk/16.0.2/libexec/openjdk.jdk/Contents/Home/lib/server/libjvm.dylib':
  dlopen(/opt/homebrew/Cellar/openjdk/16.0.2/libexec/openjdk.jdk/Contents/Home/lib/server/libjvm.dylib, 10): 
    no suitable image found.  Did find:
    /opt/homebrew/Cellar/openjdk/16.0.2/libexec/openjdk.jdk/Contents/Home/lib/server/libjvm.dylib: 
    mach-o, but wrong architecture

安装Eclipse Temurin(以前是AdoptOpenJDK)(并删除之前在/Library/Java/JavaVirtualMachines/openjdk.jdk中创建的符号链接)立即无缝地解决了这两个问题。

只要运行brew安装temurin,一切都应该没问题。

在使用brew安装openjdk并运行brew info openjdk后,我得到了这个


从那里我得到了这个命令,在运行它之后,我得到了Java工作

-操作系统?jdk / Library / Java / JavaVirtualMachines openjdk jdk。