set mac jdk version to 1.8 - macos

I have searched several ways to change JDK version on mac.
$/usr/libexec/java_home
And I got
/Library/Java/JavaVirtualMachines/jdk1.8.0_31.jdk/Contents/Home
I tried
$export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_31.jdk/Contents/Home
also tried
/usr/libexec/java_home 1.8.0_31 --exec javac -version
then I run
$echo $JAVA_HOME
/Library/Java/JavaVirtualMachines/jdk1.8.0_31.jdk/Contents/Home
then I re-check java -version
$java -version
java version "1.7.0_67"
Java(TM) SE Runtime Environment (build 1.7.0_67-b01)
Java HotSpot(TM) 64-Bit Server VM (build 24.65-b04, mixed mode)
How I can really change java -version on my mac.

To set Java to 1.8 for your shell environment, put this in your ~/.bash_profile:
export JAVA_HOME=`/usr/libexec/java_home -v 1.8`

Solution without 3rd party tools:
leave all JDKs at their default location, under /Library/Java/JavaVirtualMachines. The system will pick the highest version by default.
To exclude a JDK from being picked by default, rename its Contents/Info.plist to Info.plist.disabled. That JDK can still be used when $JAVA_HOME points to it, or explicitly referenced in a script or configuration. It will simply be ignored by system's java command.
System launcher will use the JDK with highest version among those that have an Info.plist file.
When working in a shell with alternate JDK, pick your method among existing answers (jenv, or custom aliases/scripts around /usr/libexec/java_home, etc).

Related

Eclipse Neon does not install on my Mac Sierra

when i tried to install Eclipse Neon on my Mac Sierra, it prompted:
Version 1.6.0_65 of the JVM is not suitable for the this product.
However when I check the java version on terminal: it says:
java -version
java version "1.8.0_112"
Java(TM) SE Runtime Environment (build 1.8.0_112-b16)
Java HotSpot(TM) 64-Bit Server VM (build 25.112-b16, mixed mode)
Anyone knows what is the issue?
Actually, the Eclipse popup window says:
Version 1.6.0_65 of the JVM is not suitable for the this product.
Version: 1.8 or greater is required.
I had the same problem. I had orginally installed the JRE, and did a search for "java" across the hard disk, and it found a JavaApplet plugin. I deleted this, and then installed the latest jdk (144) dmg. Running the eclipse installer then worked. (so, it was just a java environment problem for me).

Not able to open iReport Designer in mac

I'm new to Jasper reports and Mac. I have downloaded iReport-5.6.0.dmg. It got saved in downloads. Later I moved to applications. The .dmg didnt install and when I just open the .dmg and right click to open for Jaspersoft report designer, it didnt open.
I just saw some questions, but nothing helped.
I'm using mac os Sierra 10.12.2
My java version is
Alis-MacBook-Air:~ Shah$ java -version
java version "1.8.0_101"
Java(TM) SE Runtime Environment (build 1.8.0_101-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.101-b13, mixed mode)
Alis-MacBook-Air:~ Shah$
JDK location
Alis-MacBook-Air:~ Shah$ /usr/libexec/java_home -V
Matching Java Virtual Machines (2):
1.8.0_101, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_101.jdk/Contents/Home
1.7.0_79, x86_64: "Java SE 7" /Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home
/Library/Java/JavaVirtualMachines/jdk1.8.0_101.jdk/Contents/Home
iReport.conf
# ${HOME} will be replaced by user home directory according to platform
default_userdir="${HOME}/.${APPNAME}/5.6.0"
default_mac_userdir="${HOME}/Library/Application Support/${APPNAME}/5.6.0"
# options used by the launcher by default, can be overridden by explicit
# command line switches
default_options="-J-Xms256m -J-Xmx512m -J-Dorg.netbeans.ProxyClassLoader.level=1000 -J-XX:MaxPermSize=512m -J-Dapple.laf.useScreenMenuBar=true -J-Dapple.awt.graphics.UseQuartz=true -J-Dnetbeans.exception.report.min.level=99999 "
# for development purposes you may wish to append: -J-Dnetbeans.logger.console=true -J-ea
# default location of JDK/JRE, can be overridden by using --jdkhome <dir> switch
#jdkhome="/Library/Java/JavaVirtualMachines/jdk1.8.0_101.jdk/Contents/Home"
# clusters' paths separated by path.separator (semicolon on Windows, colon on Unices)
#extra_clusters=
You should setup JDK 1.7s as JAVA_HOME otherwise you'll see like this error
"The current path is: C: \ Java \ jdk1.8.0The current path is: C: \ Java \ jdk1.8.0Java HotSpot (TM) 64-Bit Server VM warning: ignoring option MaxPermSize = 512m; support was removed in 8.0" and you can setup jaspersoft studio community its working.
Issue was with the JDK version.
If the JDK version is 1.8, Jasperstudio has to be installed. It worked fine.

Java version shows 7 and Java version shows 8 in windows?

I am really frustrated to see following behavior and not sure yet after research how to fixed this. I've two separate projects one works only on Java 7 (can't update to Java 8) and another project works on Java 8 (can't downgrade to 7). So I've both Java 7 and 8 installed on my windows machine.
So, I am seeing following behavior constantly. Currently I am on Java 8 and would like switch back Java 7, so I changed environment variable JAVA_HOME and PATH to point to Java 7, but when I verify through CMD, it shows me following.
C:\>java -version
java version "1.8.0_45"
Java(TM) SE Runtime Environment (build 1.8.0_45-b15)
Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode)
C:\>javac -version
javac 1.7.0_71
I can't use above combination, neither projects works for me. So I always need to uninstalled Java 8 and then only I can point to Java 7.
Also if I want to move back to Java 8 (again installed Java 8), then it shows me following combination. How to fixed this error on Windows? As uninstalling the JDK every time is not the solution. Please help me.
C:\>java -version
java version "1.7.0_71"
Java(TM) SE Runtime Environment (build 1.7.0_71-b15)
Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode)
C:\>javac -version
javac 1.8.0_45
java.exe, the Java runtime, also installs in c:\windows or c:\windows\system32 (can't remember, I'm on a Mac now).
So even if your PATH contains the bin directory of JDK, if c:\windows (or c:\windows\system32) comes before JDK\bin in the PATH, the version in c:\windows (or c:\windows\system32) is the one that is used.
Just make sure the JDK is first in the PATH, or at least before c:\windows (or c:\windows\system32).

How to change JRE for PhpStorm on MacOs

It seems, with the latest MAcOs updates, that Java was also updated, which influenced PhpStorm performance very badly.
Anyway, I decided to update my Java.
Was
$ java -version
java version "1.6.0_51"
Java(TM) SE Runtime Environment (build 1.6.0_51-b11-457-11M4509)
Java HotSpot(TM) 64-Bit Server VM (build 20.51-b01-457, mixed mode)
After downloading Java SDK from Oracle and installing:
$ java -version
java version "1.7.0_25"
Java(TM) SE Runtime Environment (build 1.7.0_25-b15)
Java HotSpot(TM) 64-Bit Server VM (build 23.25-b01, mixed mode)
But in PhpStorm it still shows the old JRE:
I also restarted my computer, but still the old JRE is shown.
Please help, how to make PHPStorm use a new JRE?
Quoting from the "Selecting the JDK version the IDE will run under" article in the Knowledge Base
posted on March 27, 2013
Mac OS X
At the moment all our products require Apple JDK 1.6 to be installed in order to run on Mac. JDK 1.7 from Oracle is not officially supported yet and has known problems that stop us from using it by default. Oracle JDK 1.7.0_40 has added support for Retina and works much better than previous versions on Mac. You are welcome to give it a try in case you have any problems with Apple JDK.
To force running under JDK 1.7 edit /Applications/.app/Contents/Info.plist file, change JVMVersion from 1.6* to 1.7* :
<key>JVMVersion</key>
<string>1.7*</string>
See this answer for the known problems with JDK 1.7.
IDEA_JDK environment variable can be used to override the selected JDK, you may need to run the product from the Terminal so that it sees your environment variables (Mac OS limitation): open -a /Applications/.app/ .
Application About dialog will show the actual JDK version.

OS X Mountain Lion Java version

I would like to use java and javac on Mac OS X 10.8.2, but in the terminal when I ask for version with this command: java -version or javac -version it returns the following versions:
java version "1.6.0_37"
Java(TM) SE Runtime Environment (build 1.6.0_37-b06-434-11M3909)
Java HotSpot(TM) 64-Bit Server VM (build 20.12-b01-434, mixed mode)
and
javac 1.6.0_37
When I go to the settings app and tap on the Java icon in the Other section, it opens the Java Control Panel and there the jre version is 1.7.0_10
Which is used? And how can I update the java in terminal, not to use the 1.6.0 version?
Does anybody experienced this problem?
Open Java Preference App, you may find several JDKs, you can drag JDK7 to the top of the list, then re-open the shell, and invoke java -version. It will change to the JDK7.

Resources