I have an Cocoa Xcode application that I am writing and I need to check what Java versions are installed on the user's machine. I know I can check /System/Library/Frameworks/JavaVM.framework/Versions/ and see what folders exist; however, this does not work for Java 7.
When I installed Java 7 on my Mac OS X 10.7.5, it was installed to /Library/Internet Plugins/JavaAppletPlugin.plugin. But this doesn't let me know the version of Java that is installed. If a newer version of Java is installed, I'm assuming it will install to the same place.
If I need to test if Java 7+ JRE is installed on the user's machine, should I just check if the file /Library/Internet Plugins/JavaAppletPlugin.plugin exists? Is there a better way to check?
Although you may have installed Java 7, you should have installed the Apple's Java Mac OS X 2012-006 update before. Having done that (and then installed java 7 again), java -version should tell you java version "1.7.x..."
Determining the Default Version of the JDK
Related
I'm a bit confused now. When I run the command java --version in the terminal i get: java 13.0.1. When I open the system preferences and click the java app and then about, i see it says Java version 8 1.8.0_231
Does that mean I have 8, 13 or both?
When I check through the java app.
When I check through the terminal.
When i check for all JDK installed on my system (only 1 version pop ups).
You can have multiple JDK installed in one machine but you can have only one version set as default Java SDK. Looks like you have Java 13 set as default.
Try running the following :
echo $JAVA_HOME
You can also go to the tab Java and see the list of all Java Runtime Environments (JRE.)
Please note that just because you have multiple JREs available doesnot mean all corresponding SDK are also there.
You can have many version of java on your Mac. But you can run only one of this in a process.
On my Mac, system preferences run with java path :
/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/java
But in terminal, this run with java path:
/usr/bin/java
I think you can replace java file in /usr/bin by another version java you want.
that means you jdk version is 13 , and your jre version is 1.8.
jre is used for running java apps ,and the jdk(java development kit) is for building apps with java language. java jdk is like the android sdk
I just installed jre-8u72-macosx-x64.dmg from this page, the installation worked well.
However, when I type /usr/libexec/java_home -v 1.8 it returns:
Unable to find any JVMs matching version "1.8".
/Library/Java/JavaVirtualMachines/jdk1.7.0_80.jdk/Contents/Home
Does anyone know where is Java 1.8 installed?
PS: I need this to install Eclipse IDE for Java Developers, which requires Java 1.8+ VM.
You should install JDK 1.8, currently you are using a JRE. On OS X, installing just the JRE doesn't make it available as the system default available to applications.
As of January 2016, you can download JDK 1.8 for mac from
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
Because Oracle tends to change their URLs, that link might go dead. Best to do a web search for "JDK mac" or something similar to find the latest version.
I am trying to download the Java 7 jdk for Android Studio on my mac because "Android-21 requires compiling with JDK 7"
I have downloaded and installed the Java 7 jdk numerous times and restarted my laptop, but when I go to check the jdk in /System/Library/Java/JavaVirtualMachines it says 1.6.0.jdk
Correct me if I'm wrong, but 1.6.0 is the Java 6 jdk, right?
and is there a way to install it manually?
It is not in
/System/Library/Java/JavaVirtualMachines
But in
Library/Java/JavaVirtualMachines
If you take the folder structure at your root There will be two folders
1. System
2. Library
I am talking about the 2nd one. Not the Library folder in Systems folder
Use this command on terminal to find your JDK location
/usr/libexec/java_home
I have Java 7 on my Mac, but it's in /Library/Java/JavaVirtualMachines/jdk1.7.0_75.jdk/Contents/Home.
Right after upgrading to Mac OS Yosemite (10.10), my Eclipse won't start anymore. Instead I get
The JVM shared library /Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk/Contents/Home/bin/../jre/lib/server/libjvm.dylib" does not contain the JNI_CreateJavaVM symbol.
I checked java -version and get
java version "1.8.0_05"
Java(TM) SE Runtime Environment (build 1.8.0_05-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.5-b02, mixed mode)
I search and have found one similar problem Reinstalling Java 7 JDK on OSX. It is suggesting a reinstallation of Java. I am not sure if my problem falls into the same category as his. So, is reinstallation a good way to solve the problem? Any other advice? Thanks!
Go to the link below and download Java for OS X 2014-001
http://support.apple.com/kb/DL1572?viewlocale=en_US&locale=en_US
Hopefully after installing it , it will work
Try this https://jdk8.java.net/download.html Java8u20 early Update.
You may change the system version temporarily in the "SystemVersion.plist" located at System > Library > CoreServices.
Edit as root changing ProductVersion to 10.7.3 (or whatever works for you).
Install java.
Don't forget to change it back.
I solved this issue creating those empties folders as root without downgrade using java8 (vers.1.8.0_60-ea):
/System/Library/Java/JavaVirtualMachines/1.6.0.jdk and
/System/Library/Java/Support/Deploy.bundle
Hope it helps...
I installed Java JRE from Oracle: http://download.oracle.com/otn-pub/java/jdk/8u25-b17/jre-8u25-macosx-x64.dmg
Then install the Apple Package: http://support.apple.com/kb/DL1572?viewlocale=en_US&locale=en_US
I was able to install eclipse-ide from homebrew cask
brew cask install eclipse-ide eclipse-java
(Please be aware that brew cask installs to ~/Applications not /Applications)
I don't normally use Eclipse, however I was able to get the IDE up and going. I will note that java on the command line is broken, which is new in Yosimite.
Please let me know if that doesn't work. Or if you need some help with Homebrew or Cask
Make sure you are using the 64 bit version of Mac Eclipse I just tried it works flawless
Two cases:
if you already have installed Java 8 and Eclipse Luna e.g. on Mavericks and (intent to) update to Yosemite: just update, it will work fine.
if you do not have Java installed and want to run Eclipse on Yosemite:
install Apple Java 6 files from http://support.apple.com/kb/DL1572
use an Eclipse Version that runs with Java 6, e.g. Kepler from https://www.eclipse.org/downloads/packages/release/Kepler/SR2
That means, if you want to use Eclipse Luna and Java 8, install it while running Mavericks, then update to Yosemite. Do not try to install Java 8 on Yosemite as that at the moment won't work.
What does not work on my Mac is: installing Java 6 and run Eclipse Luna as that needs Java 7 or 8. Installing Java 7 or 8 does not solve the prob as something with the installer seems to be buggy. Should be solved by Oracle in a few days, however.
After upgrading to yosemite, java 6 jdk is no longer available, remember that jdk 6 for mac osx is a 32-bit application, older eclipse releases needs a 32-bit jvm in order to run properly, a 32-bit application cannot run with a 64-bit jvm like java 7 or 8, so you need to install jdk 6 to run those java applications that needs a 32 bit virtual machine. As already posted here you can download jdk 6 from http://support.apple.com/kb/DL1572?viewlocale=en_US&locale=en_US
I am trying to install Netbeans 7.4 on my mavericks mac os system but I get this very strange message at the start of installation :
No JDK found
NetBeans IDE cannot be installed.
Java (JRE) found on your computer but JDK 7 update 10 or newer is required.
Please download and install the latest update of JDK 7 from http://www.oracle.com/technetwork/java/javase/downloads/index.html and restart NetBeans installation.
What is so strange here is that I have already installed jdk 7 update 45 on my system, since I use it to work on projects made with IntelliJ Idea, the other IDE that I use.
Update1 : Here is what java -version gives
Update2 : System Preferences --> Java
Are you sure that you are not confusing jre with Java development tool kit a.k.a JDK. You may have jre but may not have JDK.
Try this and let us know the JDK version .
Open the terminal in OSX and type this -
java -version