Я пишу веб-приложение для математического анализа, я хочу использовать matlab для анализа данных и генерации некоторых фигур.Но когда я вызывал код matlab в своем веб-приложении на Java, были некоторые ошибки.
Я использую 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)
Java-версия Matlab
>> version -JAVA
ans =
Java 1.7.0_75-b13 with Oracle Corporation Java HotSpot(TM) 64-Bit Server VM mixed mode
, но когда я использую getenv -JAVA_HOME
в командном окне Matlab, я получаю результат, подобный этому
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
Я ожидаю, что веб-приложение может вызвать файл jar и правильно отобразить цифры.