操作系统是Linux Ubuntu 16.04 LTS
(应用程序在Windows上运行完全正常,我没有在安装Matlab Compiler SDK后配置任何内容)
我正在用Java编写一个Web应用程序,它也调用了一些用Matlab编写的函数,需要安装Matlab Compiler SDK,安装完成后,它告诉我将/usr/local/MATLAB/MATLAB_Runtime/v901/runtime/glnxa64:/usr/local/MATLAB/MATLAB_Runtime/v901/bin/glnxa64:/usr/local/MATLAB/MATLAB_Runtime/v901/sys/os/glnxa64:
附加到LD_LIBRARY_PATH
的末尾。变量,我用
export LD_LIBRARY_PATH=/usr/local/MATLAB/MATLAB_Runtime/v901/runtime/glnxa64:/usr/local/MATLAB/MATLAB_Runtime/v901/bin/glnxa64:/usr/local/MATLAB/MATLAB_Runtime/v901/sys/os/glnxa64:
但是,当我尝试在Netbeans中运行Web应用程序时,为什么会一直收到此错误?
java.lang.UnsatisfiedLinkError: Failed to find the required library libmwmclmcrrt.so.9.0.1 on java.library.path.
This library is typically installed along with MATLAB or the MCR. Its absence may indicate an issue with that installation or the current path configuration.
libmwmclmcrrt.so.9.0.1
位于/usr/local/MATLAB/MATLAB_Runtime/v901/runtime/glnxa64
目录
我还添加-Djava.library.path
指向上面的3个目录条目,看它是否有帮助,但它根本没有做任何好事。
我在这里看过几篇帖子,但似乎没有解决它。
答案 0 :(得分:0)
[在Mac OS High Sierra版本10.13.5(17F77)上测试,对于Linux应该相似]
我所做的是在启动应用程序服务器时(在我的情况下为Payara)。我像这样提供了javabuilder.jar
的路径
对于Payara Full
asadmin deploy --libraries /path/to/javabuilder.jar app.war
对于Payara Micro
java -jar payara-micro.jar --deploy app.war --addlibs /path/to/javabuilder.jar
注意:
/path/to/javabuilder.jar
是javabuilder.jar
在目录MATLAB_HOME/MATLAB_Runtime/SOME_VERSION/toolbox/javabuilder/jar/javabuilder.jar
中的位置,将这个javabuilder.jar
文件复制出来并引用它会失败,并出现相同的错误。它必须必须才能正常工作。不知道为什么