MATLAB Answers

I cannot inspect the workspace on MATLAB for linux

14 views (last 30 days)
Andrea Nardin
Andrea Nardin on 5 Mar 2021
Commented: Andrea Nardin on 18 Aug 2021
I have an issue running MATLAB 2020a on Ubuntu 20.04. MATLAB starts up properly but it shows the
PostVMInit failed to initialize com.mathworks.mwswing.MJStartupForDesktop
message.
Then, when I want to inspect a variable all I get is a series of errors, e.g.:
Exception in thread "AWT-EventQueue-0": java.lang.NoClassDefFoundError: Could not initialize class com.mathworks.mwswing.MJStartupForDesktop
at com.mathworks.mwswing.MJStartup.init(MJStartup.java:95)
at com.mathworks.mwswing.MJStartup.init(MJStartup.java:72)
at com.mathworks.widgets.spreadsheet.SpreadsheetColor.<clinit>(SpreadsheetColor.java:58)
at com.mathworks.widgets.spreadsheet.SpreadsheetTable.setupColorHandlers(SpreadsheetTable.java:314)
at com.mathworks.widgets.spreadsheet.SpreadsheetTable.<init>(SpreadsheetTable.java:198)
at com.mathworks.mlwidgets.array.AbstractMatlabTable.<init>(AbstractMatlabTable.java:65)
at com.mathworks.mlwidgets.array.ArrayTable.<init>(ArrayTable.java:102)
at com.mathworks.mlwidgets.array.ArrayEditorProvider.createProvider(ArrayEditorProvider.java:55)
at com.mathworks.mlwidgets.array.ValueEditorProviderRegistry.getArrayViewer(ValueEditorProviderRegistry.java:402)
at com.mathworks.mlwidgets.array.ValueEditorProviderRegistry.getValueEditorProvider(ValueEditorProviderRegistry.java:83)
at com.mathworks.mlwidgets.array.ValuePanel$UpdateListener.actionPerformed(ValuePanel.java:221)
at com.mathworks.mlwidgets.array.ValueMetaInfoRequester$VICO.matlabEvent(ValueMetaInfoRequester.java:143)
at com.mathworks.jmi.MatlabMCR$AWTReplyEvent.run(MatlabMCR.java:1641)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
Exception in thread "AWT-EventQueue-0": java.lang.NoClassDefFoundError: Could not initialize class com.mathworks.widgets.spreadsheet.SpreadsheetColor
at com.mathworks.widgets.spreadsheet.SpreadsheetTable.setupColorHandlers(SpreadsheetTable.java:314)
at com.mathworks.widgets.spreadsheet.SpreadsheetTable.<init>(SpreadsheetTable.java:198)
at com.mathworks.mlwidgets.array.AbstractMatlabTable.<init>(AbstractMatlabTable.java:65)
at com.mathworks.mlwidgets.array.ArrayTable.<init>(ArrayTable.java:102)
at com.mathworks.mlwidgets.array.ArrayEditorProvider.createProvider(ArrayEditorProvider.java:55)
at com.mathworks.mlwidgets.array.ValueEditorProviderRegistry.getArrayViewer(ValueEditorProviderRegistry.java:402)
at com.mathworks.mlwidgets.array.ValueEditorProviderRegistry.getValueEditorProvider(ValueEditorProviderRegistry.java:83)
at com.mathworks.mlwidgets.array.ValuePanel$UpdateListener.actionPerformed(ValuePanel.java:221)
at com.mathworks.mlwidgets.array.ValueMetaInfoRequester$VICO.matlabEvent(ValueMetaInfoRequester.java:143)
at com.mathworks.jmi.MatlabMCR$AWTReplyEvent.run(MatlabMCR.java:1641)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
From this moment ANY command window output is followed by a series of error meassages of this type:
Exception in thread "AWT-EventQueue-0": java.lang.NoClassDefFoundError: Could not initialize class com.mathworks.widgets.spreadsheet.SpreadsheetColor
I don't know if it's related, but MATLAB starts with SOTWARE OPENGL rendering.
NOTE: If I run MATLAB as root the problem is gone!
Non-successfull solutions tried:
I alried tried to erase preferences (Solution#1 from this answer)
I tried to use the system's JVM (openjdk 8) setting the MATLAB_JAVA variable accordingly.
None of the solutions from this answer worked
  2 Comments
Andrea Nardin
Andrea Nardin on 18 Aug 2021
Yes, the Mathworks support provided me a patch to solve the issue for the ML version in use.

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!