![如何修复在 Ubuntu 12.04(64 位)中安装 Matlab 2012a(64 位)时出现的 Java 问题?](https://linux22.com/image/1110284/%E5%A6%82%E4%BD%95%E4%BF%AE%E5%A4%8D%E5%9C%A8%20Ubuntu%2012.04%EF%BC%8864%20%E4%BD%8D%EF%BC%89%E4%B8%AD%E5%AE%89%E8%A3%85%20Matlab%202012a%EF%BC%8864%20%E4%BD%8D%EF%BC%89%E6%97%B6%E5%87%BA%E7%8E%B0%E7%9A%84%20Java%20%E9%97%AE%E9%A2%98%EF%BC%9F.png)
我正在尝试在 Ubuntu 12.04LTS (64 位) 中安装 Matlab 2012a (64 位)。我已经安装了 Java 7。我的 Java 版本是:
sabyasachi@sabyasachi-ubuntu:~/Downloads/R2012a_UNIX$ java -version
java version "1.7.0_05"
Java(TM) SE Runtime Environment (build 1.7.0_05-b05)
Java HotSpot(TM) 64-Bit Server VM (build 23.1-b03, mixed mode
安装 Matlab 时出现以下错误:
sabyasachi@sabyasachi-ubuntu:~/Downloads/R2012a_UNIX$ ./install
Preparing installation files ...
Installing ...
/tmp/mathworks_18824/sys/java/jre/glnxa64/jre/bin/java: error while loading shared libraries: libjli.so: cannot open shared object file: No such file or directory
Finished
我该如何解决这个问题?
当我使用 -v (详细)选项时,我得到以下信息:
sabyasachi@sabyasachi-ubuntu:~/Downloads/R2012a_UNIX$ sudo ./install -v
Preparing installation files ...
-> DVD = /home/sabyasachi/Downloads/R2012a_UNIX
-> ARCH = glnxa64
-> DISPLAY = :0
-> TESTONLY = 0
-> JRE_LOC = /tmp/mathworks_26521/sys/java/jre/glnxa64/jre
-> LD_LIBRARY_PATH = /tmp/mathworks_26521/bin/glnxa64
Command to run:
/tmp/mathworks_26521/sys/java/jre/glnxa64/jre/bin/java -splash:"/home/sabyasachi/Downloads/R2012a_UNIX/java/splash.png" -Djava.ext.dirs=/tmp/mathworks_26521/sys/java/jre/glnxa64/jre/lib/ext:/tmp/mathworks_26521/java/jar:/tmp/mathworks_26521/java/jarext:/tmp/mathworks_26521/java/jarext/axis2/:/tmp/mathworks_26521/java/jarext/guice/:/tmp/mathworks_26521/java/jarext/webservices/ com/mathworks/professionalinstaller/Launcher -root "/home/sabyasachi/Downloads/R2012a_UNIX" -tmpdir "/tmp/mathworks_26521"
Installing ...
/tmp/mathworks_26521/sys/java/jre/glnxa64/jre/bin/java: error while loading shared libraries: libjli.so: cannot open shared object file: No such file or directory
Finished
sabyasachi@sabyasachi-ubuntu:~/Downloads/R2012a_UNIX$
答案1
我遇到了同样的问题,并能够按照以下步骤修复它。打开终端Ctrl++Alt并T运行以下命令。
如果您还没有安装 JRE,请安装。
sudo apt-get install openjdk-7-jre
使用 -javadir 选项调用安装程序
sudo ./install -javadir /usr/lib/jvm/java-7-openjdk-amd64/jre
答案2
您的 Java/JRE 可能与此无关 - Matlab 使用它自己的 JRE,这就是导致您出现错误的原因(注意路径)。
确保 Matlab
java
是可执行的,从chmod +x sys/java/jre/glnxa64/jre/bin/java
顶层文件夹(似乎适合~Downloads/R2012a_UNIX
你)[来源]使用以下命令运行安装程序:
须藤。/安装-v
这很可能会起作用;如果不行,请使用详细(-v)选项提供的扩展输出来编辑您的问题。
答案3
如上所述,MATLAB 有自己的(非常过时的)JRE 副本,但您可以通过将 MATLAB_JAVA 环境变量指向包含您希望它使用的 JRE 的目录来让它使用另一个。
请注意,Matlab 与 Java 7 不兼容(至少目前)。