如果主机只有 MATLAB 运行时,可以 Java 使用 MATLAB 方法

Can Java use MATLAB methods provided host machine only has MATLAB Runtime

我正在尝试通过 Java 调用 MATLAB 的一些函数。

我本地机器上的是 MATLAB 运行时(64 位)和 Java 8 64 位。

下面一段代码报错。

代码

//Start MATLAB asynchronously
Future<MatlabEngine> eng = MatlabEngine.startMatlabAsync();

// Get engine instance from the future result
MatlabEngine ml = eng.get();

异常

com.mathworks.engine.EngineException: Unable to launch MATLAB or connect a shared MATLAB session.
    at com.mathworks.engine.FutureMatlab.get(FutureMatlab.java:54)
    at com.mathworks.engine.FutureMatlab.get(FutureMatlab.java:16)
    at com.poc.EngineConsoleDemo.main(EngineConsoleDemo.java:26)

如果我错了,请纠正我,但据我所知,运行 不需要完整的 MATLAB,这应该 运行 即使只有安装了 MATLAB 运行时。

那么,如果我的理解是正确的 - 为什么会出现此异常?

不,这不可能。如果是的话,那么您就可以编写自己的 MATLAB 版本,并且可以访问所有 MATLAB 功能,而无需购买 MATLAB。

-- Phil Goddard(来自评论)