我已经无缝安装和配置了Matlab的“ mcrinstaller”。我已经使用Matlab中的“库编译器APP”将非常简单的M文件(makesqr)导出到Java。不幸的是,当我尝试根据自述文件运行class1 main方法时,收到如下错误:
java.lang.NullPointerException
at com.mathworks.toolbox.javabuilder.internal.MWMCR.newRemoteInstance(MWMCR.java:518)
at com.mathworks.toolbox.javabuilder.internal.MWMCR.newInstance(MWMCR.java:559)
at MakesqrMCRFactory.newInstance(MakesqrMCRFactory.java:44)
at MakesqrMCRFactory.newInstance(MakesqrMCRFactory.java:55)
at Class1.main(Class1.java:117)
此外,我在Matlab中使用与Java版本相同的JDK版本“ Java 1.7.0_60”,但我相信Java代码在运行时找不到MCR。您可以在下面找到我的Java主要方法:
public static void main (String[] args)
{
args = new String[1];
args[0] = "5";
try {
MWMCR mcr = MakesqrMCRFactory.newInstance(); // Line 117 in Class1
mcr.runMain( sMakesqrSignature, args);
mcr.dispose();
} catch (Throwable t) {
t.printStackTrace();
}
}
请帮助我解决此问题,或者给我另一种方法,将我在Matlab中开发的M文件转换为Java项目。
致谢。
更新:我们使用matlab r 2017a