How to make MATLAB read the environment variable JAVA_HOME
61 views (last 30 days)
Show older comments
My question is how do I make MATLAB read the environment variable JAVA_HOME.
I enter the Matlab command
jenv
and get the following answer
ans =
JavaEnvironment with properties:
Version: "Java 1.8.0_202-b08 with Oracle Corporation Java HotSpot(TM) 64-Bit Server VM mixed mode"
Home: "/Applications/MATLAB_R2023a.app/sys/java/jre/maci64/jre"
Library: "/Applications/MATLAB_R2023a.app/sys/java/jre/maci64/jre/lib/server/libjvm.dylib"
Status: loaded
Configuration: "factory"
I enter the Matlab command
getenv JAVA_HOME
and get the following answer
ans = 0x0 empty char array
So I realize that for some reason JAVA_HOME has not been set properly. So I proceed to set the environement variable JAVA_HOME as instructed in:
I am running MATLAB on a Mac computer running IOS version 15.2, so according to the instructions I enter the following in ~/.zprofile
export JAVA_HOME="/Applications/MATLAB_R2023a.app/sys/java/jre/maci64/jre"
PATH="$JAVA_HOME/bin:${PATH}"
I do a echo $JAVA_HOME and I see the correct value for JAVA_HOME
but after restarting Matlab and entring in the command window
getenv JAVA_HOME
I still get
ans = 0x0 empty char array
Can anyone let me know what I am doing wrong, that MATLAB does not get the environment variable JAVA_HOME?
5 Comments
Walter Roberson
on 21 Apr 2025 at 18:28
.zshenv and .bash_profile are both related to interactive shells, and are not used when starting applications from icon or dock.
dpb
on 21 Apr 2025 at 18:48
So, you link the icon to a batch file that starts MATLAB from a shell, maybe?
What a mess...apparently at least one thing Bill's Boys did more simply.
Answers (2)
Walter Roberson
on 23 Apr 2025 at 2:24
Potentially you could edit the .matlab7rc.sh file. See https://www.mathworks.com/help/matlab/ref/matlabmacos.html#bunueg9-5
3 Comments
Walter Roberson
on 23 Apr 2025 at 22:01
In MacOS, starting MATLAB from icon or dock is done by executing the shell script bin/matlab inside the MATLAB installation folder. So a shell script is executed -- just not an interactive shell script.
See Also
Categories
Find more on Startup and Shutdown in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!