我尝试通过以下代码使用MatlabControl.java:
public static void main(String[] args) {
    MatlabControl mc = new MatlabControl();
    mc.eval(new String("x=5")); 
}但它抛出了以下异常:
Exception in thread "main" java.lang.UnsatisfiedLinkError: com.mathworks.jmi.NativeMatlab.PostMatlabRunnable(JZ)V
at com.mathworks.jmi.NativeMatlab.PostMatlabRunnable(Native Method)
at com.mathworks.jmi.NativeMatlab.postMatlabRunnable(NativeMatlab.java:521)
at com.mathworks.jmi.MatlabLooper.postMatlabRunnable(MatlabLooper.java:177)
at com.mathworks.jmi.Matlab.whenMatlabReady(Matlab.java:1609)
at matlabCon.MatlabControl.eval(MatlabControl.java:85)
at matlabCon.MatlabCon.main(MatlabCon.java:8)我在这里也看到了这个问题:call MATLAB in Java via MatlabControl.java
并按照说明进行操作--但没有成功。我已经添加了我需要的所有Jars。
有谁可以帮我?
谢谢。
发布于 2016-06-21 17:51:02
该错误意味着它无法加载相应的Matlab本机库。这可能是因为有一个32位的Matlab和一个64位的JVM (例如),也可能是您的JVM没有设置指向您的Matlab安装的路径/库(它从那里加载本机库)。请查看有关如何相应地安装和配置Matlab的说明,并验证您是使用32位JVM来安装32位Matlab,还是使用64位JVM来安装64位Matlab。
https://stackoverflow.com/questions/37911666
复制相似问题