how can I connect java with matlab

I need a simple way to connect java wih matlab to call scripts in matlab from java

3 Comments

This isn't a complete solution, but if you can make system calls from java then you can start matlab processes with command inputs, which allows you some crude matlab control.
Additionally, if you can probably interface with mexed files if you can interface with C or C++ programs from java.
Iam using matlabcontroller it connect correctly and call scripts but the output display in matlab I need to display it in java note:the output of script is an image my code
MatlabProxyFactoryOptions options = new MatlabProxyFactoryOptions.Builder()
.setUsePreviouslyControlledSession(true)
.setHidden(true)
.setMatlabLocation(null).build();
MatlabProxyFactory factory = new MatlabProxyFactory(options);
MatlabProxy proxy = null;
try {
proxy = factory.getProxy();
} catch (MatlabConnectionException ex) {
Logger.getLogger(Bas.class.getName()).log(Level.SEVERE, null, ex);
}
try {
proxy.eval("task33");
} catch (MatlabInvocationException ex) {
Logger.getLogger(Bas.class.getName()).log(Level.SEVERE, null, ex);
}
matlabcontrol is fantastic, but it hasn't been updated in a couple years.
I've created a binary-compatible fork on GitHub which is actively maintained called MatConsoleCtl.
Relative to matlabcontrol, it contains these changes
  • available on Maven Central as com.diffplug.matsim:matconsolectl
  • a way to connect to an existing MATLAB session by copy-pasting a string of text to the MATLAB console
  • more descriptive error messages in exceptions
  • compatibility with OSGi classloaders
  • fixed all compiler warnings
  • fixed several tricky bugs which were found by FindBugs
I'm happy to accept any GitHub Issues or Pull-Requests, and I'll be keeping it up-to-date and tested.

Sign in to comment.

Answers (1)

Sean de Wolski
Sean de Wolski on 10 Dec 2014
You can use Builder JA to build java packages from your MATLAB analytics.

Asked:

on 8 Dec 2014

Commented:

on 20 Oct 2015

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!