即使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版本从他们的网站

有人能帮帮我吗!!


当前回答

Pre-Requisite:

我已经在我的机器上使用brew安装了java11。

步骤1:酿造信息java11

输出:

/选择/自制/酒窖/openjdk@11

USER1-MacBook-Pro JavaVirtualMachines % brew info java11
openjdk@11: stable 11.0.12 (bottled) [keg-only]
Development kit for the Java programming language
https://openjdk.java.net/
/opt/homebrew/Cellar/openjdk@11/11.0.12 (670 files, 273.0MB)
  Poured from bottle on 2021-10-09 at 13:07:04
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/openjdk@11.rb
License: GPL-2.0-only
==> Dependencies
Build: autoconf ✔
==> Requirements
Build: Xcode ✘
==> Caveats
For the system Java wrappers to find this JDK, symlink it with
  sudo ln -sfn /opt/homebrew/opt/openjdk@11/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk-11.jdk

openjdk@11 is keg-only, which means it was not symlinked into /opt/homebrew,
because this is an alternate version of another formula.

If you need to have openjdk@11 first in your PATH, run:
  echo 'export PATH="/opt/homebrew/opt/openjdk@11/bin:$PATH"' >> ~/.zshrc

For compilers to find openjdk@11 you may need to set:
  export CPPFLAGS="-I/opt/homebrew/opt/openjdk@11/include"

==> Analytics
install: 44,188 (30 days), 149,578 (90 days), 433,845 (365 days)
install-on-request: 19,074 (30 days), 63,262 (90 days), 187,286 (365 days)
build-error: 0 (30 days)

步骤2:将openJDK路径附加到现有路径。

echo 'export PATH="/opt/homebrew/opt/openjdk@11/bin:$PATH"' >> ~/.zshrc . bin:$PATH

步骤3:源现有shell或打开新终端以验证更改

来源 ~/.zshrc

步骤4:添加检查路径

而java

输出:/ opt /自制/ opt / openjdk@11 / bin / java

步骤5:

java——版本

openjdk 11.0.12 2021-07-20
OpenJDK Runtime Environment Homebrew (build 11.0.12+0)
OpenJDK 64-Bit Server VM Homebrew (build 11.0.12+0, mixed mode)

其他回答

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,一切都应该没问题。

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

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

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

运行这个

sudo ln -sfn /usr/local/opt/openjdk/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk.jdk

在2022年,只有安装了Android工作室:

检查Android studio中是否安装JDK。在Android Studio中,选择文件>项目结构。在SDK条目下,如果没有选择默认JDK,则从列表中选择,如果没有,则添加JDK,然后申请安装。 在Android studio中安装JDK后,只需直接从Android studio中添加JDK路径即可。在终端中运行下面的命令,就完成了。

echo 'export JAVA_HOME="/应用程序/Android Studio. home ="app/Contents/jre/Contents/Home"' >> ~/.zshrc . Home

现在,检查它是否工作。

❯Java -version Openjdk版本“11.0.11”2021-04-20 OpenJDK运行时环境(build 11.0.11+0-b60-7772763) OpenJDK 64位服务器虚拟机(build 11.0.11+0-b60-7772763,混合模式)

不需要从brew安装任何包或创建任何符号链接。Java已经嵌入到Android工作室中,我们可以直接在我们的系统中使用它。

我只需要在Mac上执行以下操作:

brew install openjdk
sudo ln -sfn /opt/homebrew/opt/openjdk/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk.jdk
export JAVA_HOME="/Library/Java/JavaVirtualMachines/openjdk.jdk/Contents/Home"
java --version