如何为Ubuntu和Netbeans设置Matlab MCR(UnsatisfiedLinkedError)

时间:2014-09-04 10:42:32

标签: matlab netbeans environment-variables matlab-compiler javabuilders

我正在服务器中部署Java EE项目,该服务器使用Matlab的MCR来实现某些图像处理功能。我已经尝试了好几个月,但我无法让它发挥作用。问题是,当它要使用MCR时,它无法找到.so库。我收到了这个错误:

  

javax.servlet.ServletException:无法在java.library.path上找到MATLAB builder JA所需的库libmwmclmcrrt.so.7.13。该库通常与MATLAB或MCR一起安装,其缺失可能表示该安装或当前路径配置存在问题。该组件尝试使用的MCR版本是7.13。

     

ROOT原因:

     

java.lang.UnsatisfiedLinkError:无法在java.library.path上找到MATLAB Builder JA所需的库libmwmclmcrrt.so.7.13。该库通常与MATLAB或MCR一起安装,缺少该库可能表示该安装或当前路径配置存在问题。该组件尝试使用的MCR版本是:7.13。

服务器使用:

  • Ubutuntu 64位。
  • Netbeans 7.4
  • Glassfish
  • java 6 sdk
  • 首先它使用MCR 7.13现在它使用MCR 8.1

我已经尝试过的事情:

  • 使用export:
  • 设置环境变量LD_LIBRARY_PATH和XAPPLERSDIR
  

export LD_LIBRARY_PATH = / usr / local / MATLAB / MATLAB_Compiler_Runtime / v81 / runtime / glnxa64:/ usr / local / MATLAB / MATLAB_Compiler_Runtime / v81 / bin / glnxa64:/ usr / local / MATLAB / MATLAB_Compiler_Runtime / v81 / sys / os / glnxa64:在/ usr /本地/ MATLAB / MATLAB_Compiler_Runtime / V81 / SYS / JAVA / JRE / glnxa64 / JRE / lib目录/ AMD64 / native_threads:在/ usr /本地/ MATLAB / MATLAB_Compiler_Runtime / V81 / SYS / JAVA / JRE / glnxa64 / JRE / LIB / AMD64 /服务器:在/ usr /本地/ MATLAB / MATLAB_Compiler_Runtime / V81 / SYS / JAVA / JRE / glnxa64 / JRE / LIB / AMD64:$ LD_LIBRARY_PATH

     

export XAPPLRESDIR = / usr / local / MATLAB / MATLAB_Compiler_Runtime / v81 / X11 / app-defaults

  • 使用setenv:
  • 设置环境变量LD_LIBRARY_PATH和XAPPLERSDIR
  

未找到命令setenv

我已经尝试了很多我无法记住的事情而且没有一个能够工作,它会一直显示相同的错误(现在版本为8.1而不是7.13)。请帮助我,谢谢。

1 个答案:

答案 0 :(得分:2)

我在使用Linux,Java EE和Matlab时遇到了同样的问题。我的解决方案是:

  • 打开终端
  • 以root $ su身份登录并输入密码
  • 编辑/ etc / enviroment $ gedit /etc/enviroment
  • 在我们的案例中添加所需的变量:
  

LD_LIBRARY_PATH =“/ USR /本地/ MATLAB / MATLAB_Compiler_Runtime / V81 /运行/ glnxa64:在/ usr /本地/ MATLAB / MATLAB_Compiler_Runtime / V81 / bin中/ glnxa64:在/ usr /本地/ MATLAB / MATLAB_Compiler_Runtime / V81 / SYS / OS / glnxa64:在/ usr /本地/ MATLAB / MATLAB_Compiler_Runtime / V81 / SYS / JAVA / JRE / glnxa64 / JRE / lib目录/ AMD64 / native_threads:在/ usr /本地/ MATLAB / MATLAB_Compiler_Runtime / V81 / SYS / JAVA / JRE / glnxa64 / JRE / LIB / AMD64 /服务器:在/ usr /本地/ MATLAB / MATLAB_Compiler_Runtime / V81 / SYS / JAVA / JRE / glnxa64 / JRE / LIB / AMD64"

     

XAPPLRESDIR = “/ USR /本地/ MATLAB / MATLAB_Compiler_Runtime / V81 / X11 /默认应用程序”

  • 保存文件并重新启动。
  • 以root身份启动服务器。

您的其他解决方案(例如导出)发生的情况是您创建的变量与GlassFish服务器之间没有可见性。在环境中设置变量将使您确信它们可以从任何其他程序/进程中看到。