Using Java API gives "no nativemvm in java.library.path"
41 views (last 30 days)
Show older comments
I am attempting to work through the example code for the Java Matlab engine API (Note: this is calling Matlab FROM Java): https://www.mathworks.com/help/matlab/matlab_external/java-example-source-code.html
I can get to the last step, then I get the error: "java.lang.UnsatisfiedLinkError: no nativemvm in java.library.path". FYI I get this same error when trying to run my own code linked to Matlab in Eclipse.
Does anyone know how to fix this? Or know of any other information/examples/tutorials on calling the Matlab engine from Java? (This is a very new feature in 2016b so there is not much information out there)
1 Comment
Michaela Rikard
on 5 Oct 2017
I am having the same problem. I have added the matlabroot/bin/maci64 to both the PATH and DYLD_LIBRARY_PATH and am getting the same error: no nativemvm in java.library.path. It seems like people have been able to get this to work by adding to the PATH in Windows. Has anyone had success on a Mac?
Answers (5)
Jim Person
on 13 Jan 2017
J.Eric Tkaczyk
on 13 Feb 2017
This also worked for me, but I had to first exit and restart my IntelliJ IDE after changing the PATH on the Windows Environment Variables
1 Comment
Christoph Müller
on 21 Jun 2017
I still have this problem (also with IntelliJ IDE) despite changing the PATH on the WIndows Environment Variables. Could you please explain hoe you were to solve this issue step by step? It seems that I am missing something here. Thanks!
ant
on 23 Mar 2017
you need to add the matlab library to your IDE(eclipse or others) or System (if you don't use any IDEs ), see below:
that's the right solution.
2 Comments
Chibing Gng
on 20 Feb 2017
matlabroot/extern/engines/java/jar/engine.jar
But in my computer I do not have the above files for 2016b.Please tell me how to fix it.
2 Comments
Kobe Van Reusel
on 15 Mar 2017
I'm having the same problem but can't find the solution for it.
I added the path to my PATH variable and added the engine.jar to my library but stil it gives me the "no nativemvm in java.library.path" error.
Can someone explain all the steps he took to get it working? Is it important where the engine.jar file is located or can i put it in the working directory of my project?
I'm using osx with netbeans and downloaded Matlab R2017a.
1 Comment
Bo Li
on 15 Mar 2017
This is a quote from the file "<matlabroot>/extern/examples/engines/java/README" for Mac:
Run the examples by adding "<matlabroot>/bin/maci64" to the Java library search path without setting the DYLD_LIBRARY_PATH variable:
java -Djava.library.path=<matlabroot>/bin/maci64 -classpath .:<matlabroot>/extern/engines/java/jar/engine.jar EngineConsoleDemo
See Also
Categories
Find more on Call MATLAB from Java in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!