Even though JRE 8 is installed on my MAC -" No Java Runtime present,requesting to install " gets displayed in terminal
JavaXamarinJava Problem Overview
Even though JRE 8 is installed on my MAC OS Yosemite 10.10.3,while running the Android present in tools in sdk - the error - " No Java Runtime present,requesting to install " gets displayed in terminal- how do i solve this issue?
-
I wanted to install Xamarin test recorder - after installing they asked me to install Android sdk
-
SDK is downloaded in Library/Developer/Xamarin/android-sdk
-
Now when I run Android present in tools folder - I get the error - No Java run time
-
I've installed JRE 8 with get the verified java version from their site
Can someone please help!!
Java Solutions
Solution 1 - Java
You have to install the full JDK, not only the JRE.
I had the same issue and solved by installing JDK.
Please use this link to download the latest JDK version 18.
Solution 2 - Java
After installing openjdk with brew and runnning brew info openjdk
I got this
And from that I got this command here, and after running it I got Java working
sudo ln -sfn /usr/local/opt/openjdk/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk.jdk
Solution 3 - Java
I didn't need the full JDK, I just needed to make JRE work and none of the other answers provided above worked for me. Maybe it used to work, but now (1st Jul 2018) it isn't working. I just kept getting the error and the pop-up.
I eventually solved this issue by placing the following JAVA_HOME export in ~/.bash_profile:
export JAVA_HOME=/Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin/Contents/Home
Hope this helps someone. I'm running Mac OS High Sierra.
Solution 4 - Java
2021 solution
TL;DR
brew install temurin
Details
On an M1 Mac/Apple Silicon (running Big Sur), I had already openjdk
installed. As signaled in a previous answer by Mohammed, openjdk
is keg-only with brew
, and hence requires adding a symlink.
After following this, it solved the No Java Runtime present
error, but rJava
was complaining about missing libjvm.dylib
and that existing libraries were for the wrong architecture:
.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
Installing Eclipse Temurin (previously AdoptOpenJDK
) (and removing the previously created symlink in /Library/Java/JavaVirtualMachines/openjdk.jdk
) immediately solved both issues seamlessly.
Just run brew install temurin
and everything should be OK.
Solution 5 - Java
If you came across the error when tried to generate a jks file (keystore), so try adding
/Applications/Android\ Studio.app/Contents/jre/Contents/Home/bin/keytool
before running the command, like so:
/Applications/Android\ Studio.app/Contents/jre/Contents/Home/bin/keytool -genkey -v -keystore ~/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key
Solution 6 - Java
I just had to do the following on 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
Solution 7 - Java
Since it sounds like your JAVA_HOME variable is not set correctly, follow the instructions for setting that.
https://stackoverflow.com/questions/22842743/setting-java-home-environment-variable-on-mac-osx-10-9
I would imagine once you set this, it will stop complaining.
Solution 8 - Java
Maybe someone is still having the same issue. You can install openjdk using homebrew, and then add the new JDK bin
directory to the front of your path:
cd ~
brew install openjdk
echo 'export PATH="/usr/local/opt/openjdk/bin:$PATH"' >> .bash_profile
source .bash_profile
Solution 9 - Java
Pre-Requisite:
- I already had java11 installed on my machine using brew.
Step-1: brew info java11
output:
/opt/homebrew/Cellar/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)
Step-2: Append openJDK path to existing path.
echo 'export PATH="/opt/homebrew/opt/openjdk@11/bin:$PATH"' >> ~/.zshrc
Step-3: Source existing shell or open new terminal to validate changes
source ~/.zshrc
Step-4: Check path is added
which java
output: /opt/homebrew/opt/openjdk@11/bin/java
Step-5:
java --version
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)
Solution 10 - Java
In 2022:
No need to download Java anymore, once Android Studio is installed.
Even though Java 11 is embedded with Android Studio now, on Mac sometimes this problem arises and the Java runtime is not found.
So, I have solved this problem by doing these two steps:
- In Android Studio go to File > Project Structure. If, under the SDK entry, you can see there is no default SDK selected, but a text in red "No SDK", click on it and you will find an SDK / JDK list, select one of them. Thats it.
- Make sure you run Android Studio from Application Folder. For this copy the Android Studio launcher to the Application folder. Then in the Finder, go to the Application folder. Right-click on it. Click on "Show package contents", then navigate up to jre folder. Copy the folder and paste it into your home folder.
Now setup the path from the terminal: you can create a folder named java_jre, and the path must be set to jre/contents/Home
:
Noors-Mac-mini:bin noorhossain$ export JAVA_HOME="/Users/noorhossain/java_jre/jre/Contents/Home"
// now checking the version :
Noors-Mac-mini:bin noorhossain$ java -version
openjdk version "11.0.11" 2021-04-20
OpenJDK Runtime Environment (build 11.0.11+0-b60-7772763)
OpenJDK 64-Bit Server VM (build 11.0.11+0-b60-7772763, mixed mode)
Solution 11 - Java
TL;DR
For JDK 11 try this:
To handle this problem in a clean way, I suggest to use brew
and jenv
.
For Java 11 follow this 2 steps, first :
JAVA_VERSION=11
brew reinstall jenv
brew reinstall openjdk@${JAVA_VERSION}
jenv add /usr/local/opt/openjdk@${JAVA_VERSION}/
jenv global ${JAVA_VERSION}
~/.bashrc
or ~/.zshrc
And add this at end of your shell config scripts export PATH="$HOME/.jenv/bin:$PATH"
eval "$(jenv init -)"
export JAVA_HOME="$HOME/.jenv/versions/`jenv version-name`"
Problem solved!
Then restart your shell and try to execute java -version
Note: If you have this problem, your current JDK version is not existent or misconfigured (or may be you have only JRE).
Solution 12 - Java
In newer versions of OS X (especially Yosemite, EL Capitan), Apple has removed Java support for security reasons. To fix this you have to do the following.
- Download Java for OS X 2015-001 from this link: https://support.apple.com/kb/dl1572?locale=en_US
- Mount the disk image file and install Java 6 runtime for OS X.
After this you should not be seeing any of the below messages:
- Unable to find any JVMs matching version "(null)"
- No Java runtime present, try --request to install.
Solution 13 - Java
Below is worked for me on macos mojave 10.14.6 version
I installed current jdk(https://www.oracle.com/java/technologies/javase-downloads.html)
Then do respectively;
- vim .bash_profile
- add "export JAVA_HOME=$(/usr/libexec/java_home)" to bash_profile
- source .bash_profile
it is done. And you can check the version with java -version command.
Solution 14 - Java
If you are having this issue for the same reason that I am, I can tell you why it is happening. I just don't know how to fix it yet.
Here it is:
I am using JDK version 1.8 on MacOS Big Sur. I do not want to have to install a later version of the JDK because all my projects run on 1.8. But here's the thing.... On the command line
java -version
Returns this:
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)
but a slightly different command (version prefixed with 2 dashes instead of 1)
java --version
returns this error:
Unrecognized option: --version
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
This is because Java 8 uses single dash version, all JDKs after use double dash.
So the machine, when looking for JAVA_HOME, is also using double dashes and getting the error.
Solution 15 - Java
I have Mojave 10.14.6 and the only thing that did work for me was:
- setting JAVA_HOME to the following:
export JAVA_HOME=/Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin/Contents/Home
- source .bash_profile (or wherever you keep your vars, in my case .zshrc)
Hope it helps! You can now type java --version
and it should work
Solution 16 - Java
It's worth noting that with my current version of SQLDeveloper (21.2.1
), there's another way to specify the JDK location. In my case, I was able to open up ~/.sqldeveloper/21.2.1/product.conf
and set the JavaHome
directive to the appropriate directory. I use jabba
for JDK version management, and this path was something like ~/.jabba/jdk/[email protected]/Contents/Home
. Needless to say, just setting that config value and restarting SQLDeveloper left me with a running copy again. This should work with any version of SQLDeveloper given the product.conf
file exists inside your user's .sqldeveloper
directory appropriate for the version you are using.
Solution 17 - Java
In 2022, only if Android studio is installed:
-
Check if JDK is installed in Android studio. In Android Studio go to File > Project Structure. Under the SDK entry, if there is no default JDK selected, select from the list, or if there isn't any, add JDK and then apply to install.
-
After the JDK is installed in Android studio, you just need to add the JDK path directly from your Android Studio. Run the below command in the terminal and that's it.
> echo 'export JAVA_HOME="/Applications/Android Studio.app/Contents/jre/Contents/Home"' >> ~/.zshrc
- Now, check if it's working.
> ❯ java -version > openjdk version "11.0.11" 2021-04-20 > OpenJDK Runtime Environment (build 11.0.11+0-b60-7772763) > OpenJDK 64-Bit Server VM (build 11.0.11+0-b60-7772763, mixed mode)
No need to install any package from brew or create any symlink. The Java is already embedded with the Android studio and we can use this directly for our system.
Solution 18 - Java
just run this
sudo ln -sfn /usr/local/opt/openjdk/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk.jdk
Solution 19 - Java
install JDK it will work ,
here is the jdk link to download .
link: https://www.oracle.com/technetwork/java/javase/downloads/jdk13-downloads- 5672538.html