2014-06-20 34 views
0

我试图将Matlab Java从7降级到6,原因是Ubuntu中的一些问题,如在Matlab中创建GUI(使用GUIDE)中的问题。应用程序和数字我在Windows 8.1中使用Matlab R2014a创建了很多这里的问题。窗口的大小,深灰色,按钮和图形的设计在Ubuntu中改变了。在Ubuntu中将Matlab Java从7降级到6返回错误

我在Matlab社区站点阅读并询问ubuntu,我必须将Java降级到1.6以解决此问题。因此,这是我的方法:

sudo apt-get install oracle-java6-installer (Getting java oracle in terminal) 

export MATLAB_JAVA=/usr/lib/jvm/java_6_oracle/jre (Set Matlab java in terminal-  address is the path of java that downloaded) 

与./matlab我有这样的错误运行MATLAB后:

Fatal Error on startup: Cannot locate or initialize class com/mathworks /jmi/OpaqueJavaInterface. java.lang.UnsupportedClassVersionError: com/mathworks/jmi/OpaqueJavaInterface : Unsupported major.minor version 51.0 at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631) at java.lang.ClassLoader.defineClass(ClassLoader.java:615) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141) at java.net.URLClassLoader.defineClass(URLClassLoader.java:283) at java.net.URLClassLoader.access$000(URLClassLoader.java:58) at java.net.URLClassLoader$1.run(URLClassLoader.java:197) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:190) at java.lang.ClassLoader.loadClass(ClassLoader.java:306) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) at java.lang.ClassLoader.loadClass(ClassLoader.java:247)

我降级的Java 1.7 Matlab的R2014a的1.6。当我使用终端下载的Java 1.7并将它连接到Matlab时,没有任何问题,所以我认为问题只是降级到1.6。

谢谢。

PS。这是一些其他的讨论可能会有所帮助:When I run guide in matlab it opens a blank all gray window. Whats going on?

回答

1

你混合了一些东西。现在的问题是关于Matlab R2012b,它最初是随Java 6一起构建和发布的,并随附于其中。在这里使用Java 7会导致一些小问题,但这是可能的。

由于Java没有向前兼容性,Java 6运行时环境无法加载类文件,因此您正在使用随Java 7构建并随附的Matlab R2014a。

Matlab自动化很简单,因为它不需要JRE。

使用Java 7,你的问题一定是其他原因造成的。 Java 7是R2014a的正确版本

+0

谢谢@丹尼尔的回复。你可以查看这个链接:http://www.mathworks.com/matlabcentral/answers/132496-guide-gui-s-are-all-blank-gray-boxes-something-is-wrong。他的问题与运行1.7版的Matlab相同。我找不到解决我的问题的方法。这是令人困惑的... – user2991243

+0

我认为@ user2991243是正确的。问题在于Java。 Matlab在linux上不能正确运行java 7。 –

+1

有了上面的细节,我只能说使用java 7是正确的版本。 – Daniel