当我在Ubuntu中运行MATLAB安装脚本时,我得到以下异常:
Exception in thread "main" java.lang.NoClassDefFoundError: Could not initialize class java.awt.Component
可提供更长的输出here
我知道这是一个Java问题,并且可能通过更改类路径或类似的东西来修复,但我不知道如何。
任何想法?
答案 0 :(得分:6)
对我来说,当我在我的系统上安装JRE时,此错误已得到修复:
apt-get install default-jre
在Ubuntu 12.04上,而不是让MATLAB使用它自己的。
答案 1 :(得分:2)
我整个晚上一直在和这个问题作斗争,但我偶然发现了一个对我有用的解决方案。
尝试使用静默安装程序进行安装后,我收到了一个不同的错误信息。原来,缺少一个库(libXtst.so.6)。我能够在我的Ubuntu系统上安装:
apt-get install libxtst6
之后我尝试运行GUI安装程序(通过X转发),看起来它现在可以正常工作。
答案 2 :(得分:1)
对于MATLAB R2012a学生版,在Ubuntu 14.04中,我必须首先安装这些先决条件:
sudo apt-get install default-jre libxtst6:i386 libXext6:i386 libxi6:i386 libncurses5:i386 libxt6:i386 libxpm4:i386 libxmu6:i386 libxp6:i386
接下来,我按照MATLAB的说明(sudo ./install
)安装/激活。我回答说#34;是的"当安装程序要求在/ usr / local / bin /
最后,在启动MATLAB时,我必须指定它以32位模式运行:
matlab -glnx86
我从这个答案汇总了这些步骤:https://askubuntu.com/questions/363878/how-to-install-32-bit-matlab-in-ubuntu-64-bit
和Ubuntu MATLAB指南: https://help.ubuntu.com/community/MATLAB
每次启动MATLAB时我都不想键入-glnx86选项,所以我用自动指定-glnx86选项的脚本替换了/ usr / local / bin /中的matlab符号链接:
ls -l /usr/local/bin/matlab #note the destination of the symbolic link
sudo mv /usr/local/bin/matlab /usr/local/bin/matlab.bak
#ensure the first path below matches your symbolic link's destination
echo '/usr/local/MATLAB/R2012a_Student/bin/matlab -glnx86 "$@"' | sudo tee /usr/local/bin/matlab
sudo chmod +x /usr/local/bin/matlab
有了这个,我可以输入' matlab'它正确启动。 (脚本中的"$@"
将所有输入参数转发给matlab。)这可能是一种更优雅的方法来完成此任务,但它有效。
我还遇到了" /lib/libc.so.6:找不到" matlab启动时出错,我通过this answer来修复。
答案 3 :(得分:0)
安装gnome(sudo apt-get install gnome)为我解决了这个问题。我确信这是完全矫枉过正的,但现在可以使用所需的库。