I found similar issues but none addressing the issue recently.
In a fresh installed Java, for the record:
java -version
openjdk version "14.0.1" 2020-04-14
OpenJDK Runtime Environment AdoptOpenJDK (build 14.0.1+7)
Eclipse OpenJ9 VM AdoptOpenJDK (build openj9-0.20.0, JRE 14 Mac OS X amd64-64-Bit Compressed References 20200416_40 (JIT enabled, AOT enabled)
OpenJ9 - 05fa2d361
OMR - d4365f371
JCL - 5757187cae based on jdk-14.0.1+7)
I'm trying to execute a simple:
javaws
And getting a
No Java runtime present, requesting install.
Unable to locate a Java Runtime to invoke.
In the aforementioned similar problems, the people correlated this to the lack of JAVA_HOME, which is not the case here:
echo $JAVA_HOME
/Users/fbarbeiro/.sdkman/candidates/java/current/bin/java
I'm using a MacOS High Sierra version 10.13.3which I cannot update due to external dependencies.
Any clue in what could have been causing the No Java runtime present, requesting install. Unable to locate a Java Runtime to invoke.?
Thanks
javaws is the command to start the Java Web Start launcher.
Java Web Start was deprecated in Java 9 and removed in Java 11. You can downgrade from 14 to 10, or look for alternatives. I found this with an Internet search: https://openwebstart.com/
Related
Following the posts here and here, I had to have two different versions of Java/OpenJDK installed
brew install java
brew cask install java
now I have openjdk 13.0.2
openjdk 13.0.2 2020-01-14
OpenJDK Runtime Environment (build 13.0.2+8)
OpenJDK 64-Bit Server VM (build 13.0.2+8, mixed mode, sharing)
in two different locations
/usr/local/opt/openjdk/bin
/usr/local/opt/openjdk/libexec/openjdk.jdk/Contents/Home/bin/
and openjdk 14
openjdk 14 2020-03-17
OpenJDK Runtime Environment (build 14+36-1461)
OpenJDK 64-Bit Server VM (build 14+36-1461, mixed mode, sharing)
also in two different locations
/System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/
/Library/Java/JavaVirtualMachines/openjdk-14.jdk/Contents/Home/bin/
so my questions are
why there are two different locations for each installation of OpenJDK?
how to find out if there are more installations of JDK on my system? Ran sudo find / -name java which nuked my terminal (see log here).
How to know how those different versions of java are installed?
I understand that JDK is Java SDK and JRE (Java Runtime Environment) is an oracle thing which I think OpenJDK doesn't have (?) but looking at OpenJDK download page what are "JMC" and "Java SE"?!
what you are seeing is the way that a JDK works on macOS. but basically what you should know that we have two entities called JDK and JRE. JDK is a tool for java developers to compile and run their applications. JRE is a runtime for clients to run java applications. JDK is containing a JRE, so you don't need to install JRE when you have JDK.
A JDK is a folder that you can have based on your OS and copy paste it every where that you need and just add the bin folder to your PATH . so you might have lot of JDK folders but only the one that is added to your PATH is your current working JDK, and they are not working at the same time in one environment but you can have multiple Java versions on different user profiles.
what you have is one installation with its meta data and links all over the macOS.
you can have multiple JDK folders all around your hard disk but only one of them at the current time is working and that would be the one that you have in the user profile.
I don't know a way to find out how they are installed. you can query the tools like brew in your os to find out that if they installed any java or not but not from JDK itself.
JMC is java mission control which is a monitoring application for java application. JRE, as I said, is a runtime for running the applications and OpenJDK also includes a runtime in itself. JavaSE is the specification of Java for Standard edition since we have other editions too.
I am trying to install eclipse-cpp oxygen on macOS Sierra 10.12. While installing it i get an error that java version is not 1.8, while I had already installed latest JDK package. on terminal it shows java version as below
java version "1.6.0_65"
Java(TM) SE Runtime Environment (build 1.6.0_65-b14-468-11M4833)
Java HotSpot(TM) 64-Bit Server VM (build 20.65-b04-468, mixed mode)
Please suggest how can I upgrade my java version.
Apple don't provide a version of Java greater than Java 6. You must install Java 8 from the Oracle site.
In order to run Eclipse you must install the full JDK, the JRE download is not enough as it does not include the java executable.
The Oracle site is here
You can install Java8 from here.
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
make sure to check the latest binaries of java and javac in PATH. You can override the old java binaries in path.
I am getting below result, Does it mean I am having JDK 1.7.0_45 and JRE is 1.42 ? Please advise.
$ javac -version
Eclipse Java Compiler v_677_R32x, 3.2.1 release, Copyright IBM Corp 2000, 2006. All rights reserved.
$ java -version
java version "1.7.0_45"
Java(TM) SE Runtime Environment (build 1.7.0_45-b18)
Java HotSpot(TM) 64-Bit Server VM (build 24.45-b08, mixed mode)
$ alternatives --config java
There is 1 program that provides 'java'.
Selection Command
-----------------------------------------------
*+ 1 **/usr/lib/jvm/jre-1.4.2-gcj/bin/java**
Enter to keep the current selection[+], or type selection number:
It would appear that you have two versions of Java installed:
The Java on your PATH is Java 1.7.0. I think it is an Oracle build rather than a build from your Linux system's package repository.
The Java configured using alternatives looks like a GCJ Java that is compatible with Java 1.4.2. It was probably installed from your package repository. IMO, it is inadvisable to use this from a technical standpoint. In fact, I would recommend uninstalling it.
Actually I am getting "Unsupported major.minor version 51.0" error after uploading a external jar file to Informatica powercenter Java transformation.
That implies that Informatica is using the Java 1.4.2 installation.
Now, the version of Java that an application uses will depend on what version of Java the application's launcher / launch script is using. That could depend on a number of things:
If the launcher uses an absolute path for the java command, then that is what will use.
If the launcher uses a simple name (e.g. java) then the version used will depend on the launcher's $PATH. This is probably what is happening ... and the $PATH used is different from your shell's $PATH.
So what is the solution?
You could add the Oracle Java install to the alternatives system. See man alternatives or Google for instructions using "java oracle alternatives install"
You could tweak the $PATH used by the application's launcher.
Depending on your Linux distro, you could install an OpenJDK 1.7.0 JDK or JRE from the package repos. That will (should) add the new installed Java to the alternatives database, so that you can select it instead of the old GCJ 1.4.2 installation.
I just tried to run Eclipse on a Mac Book Pro running OSX Mavericks. I've downloaded both, the 32 and the 64 bit version. Both end up in following Notification:
Version 1.6.0_65 of the JVM is not suitable for this product.
Version: 1.7 or greater is required.
I know that the question was already asked, but my Eclipse won't event start with the 64-bit version, which was the answer for a smiliar question. So I checked the version of my installed Java by running
java -version
In the terminal. The output really confirmed, that version 1.6.0_65 was installed. Here's the output:
java version "1.6.0_65"
Java(TM) SE Runtime Environment (build 1.6.0_65-b14-462-11M4609)
Java HotSpot(TM) 64-Bit Server VM (build 20.65-b04-462, mixed mode)
Now the problem is that when launching the Java Control panel, it says, that Java 7 Update 67 is installed, and there are no updates.
So where's my problem, how get I get Eclipse to run?
You can modify the eclipse.ini and add the path to your JDK7
For versions of Mac OS X 10.7+ the location has changed to
-vm
/Library/Java/JavaVirtualMachines/<''jdk_name_ver''>/Contents/Home/...
To be safer, determine the location for the JDK you intend to use via the utility /usr/libexec/java_home and put this value with .../bin/java appended into the eclipse.ini file.
See "How to install JRE 1.7 on Mac OS X and use it with Eclipse?"
I installed JDK, "Java SE Development Kit 8u101", in addition to JRE and eclipse started to work fine.
I've recently installed netbeans 7.3 on my Mac (Lion 10.7.5, up-to-date).
At the command line, I would get:
[129]$java -version
java version "1.6.0_45"
Java(TM) SE Runtime Environment (build 1.6.0_45-b06-451-11M4406)
Java HotSpot(TM) 64-Bit Server VM (build 20.45-b01-451, mixed mode)
Today I went to the netbeans plugin window and found 18 updates to install. When I attempted to do this, I received a message that some of them require > Java 1.7, and I only have 1.6 (as indicated above). So I dutifully ran out to java.com and downloaded Java 1.7 Update 21 successfully.
When I run a Java version checker in various browsers I see a report that Java 1.7.0_21 is the installed version. In addition, the Mac's Java Control Panel also indicates that 1.7.0_21-b12 is the current version.
However, upon restarting netbeans, it still has the same complaint that Java 1.6 is in use. I've rebooted the machine and get the same result. And, the result of 'java -version' at the command line also still shows the same result as above (1.6.0_45).
And, finally, even if I try something like:
/usr/libexec/java_home -v 1.7.0_21 --exec java -version
I get:
Unable to find any JVMs matching version "1.7.0_21"
I'm baffled. Does anybody have any advice on this?
Thanks.
Doug
netbeans will be using it's own version of the the JDK try this
where-can-i-set-the-jre-jdk-which-is-used-to-run-netbeans-besides-the-command-line