使用MATLAB for Javaweb应用程序,但是出现了MCR错误

时间:2019-06-10 11:09:50

标签: java macos matlab

我正在编写一个用于数学分析的Web应用程序,我想使用Matlab来分析数据并生成一些图形。但是当我在Java Web应用程序中调用matlab代码时,出现了一些错误。

我正在将macos10.16与matlab2016a一起使用。

我计算机的Java版本

java version "1.7.0_80"
Java(TM) SE Runtime Environment (build 1.7.0_80-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)

matlab的Java版本

>> version -JAVA

ans =

Java 1.7.0_75-b13 with Oracle Corporation Java HotSpot(TM) 64-Bit Server VM mixed mode

但是当我在Matlab的命令窗口中使用getenv -JAVA_HOME时,会得到如下结果

ans =

     ''

matlab代码打包到jar文件中,当我在应用程序中调用jar文件时,会发生以下错误

Exception in thread "main" java.lang.ExceptionInInitializerError
    at com.mathworks.toolbox.javabuilder.internal.MCRConfiguration.getProxyLibraryDir(MCRConfiguration.java:293)
    at com.mathworks.toolbox.javabuilder.internal.MCRConfiguration$MCRRoot.get(MCRConfiguration.java:71)
    at com.mathworks.toolbox.javabuilder.internal.MCRConfiguration$MCRRoot.<clinit>(MCRConfiguration.java:83)
    at com.mathworks.toolbox.javabuilder.internal.MCRConfiguration.getMCRRoot(MCRConfiguration.java:88)
    at com.mathworks.toolbox.javabuilder.internal.MCRConfiguration$ModuleDir.<clinit>(MCRConfiguration.java:60)
    at com.mathworks.toolbox.javabuilder.internal.MCRConfiguration.getModuleDir(MCRConfiguration.java:65)
    at com.mathworks.toolbox.javabuilder.internal.MWMCR.<clinit>(MWMCR.java:1518)
    at matlab.analyze.AnalyzeMCRFactory.newInstance(AnalyzeMCRFactory.java:47)
    at matlab.analyze.AnalyzeMCRFactory.newInstance(AnalyzeMCRFactory.java:58)
    at matlab.analyze.Plot.<init>(Plot.java:61)
    at matlabb.MatlabTest.main(MatlabTest.java:11)
Caused by: java.lang.NullPointerException
    at com.mathworks.toolbox.javabuilder.internal.MCRConfiguration$ProxyLibraryDir.get(MCRConfiguration.java:258)
    at com.mathworks.toolbox.javabuilder.internal.MCRConfiguration$ProxyLibraryDir.<clinit>(MCRConfiguration.java:288)
    ... 11 more

我希望Web应用程序可以调用jar文件并正确显示图形。

0 个答案:

没有答案