Прежде всего, вот список соответствующих параметров запуска, а также операционная система, в которой они поддерживаются (в противном случае они игнорируются и не действуют):
-nojvm
[UNIX]: запуск без JVM, все, что требует Java, не работает (включая функциональность Handle Graphics) -nodisplay
[UNIX]: не использует отображение X-Window, игнорирует $DISPLAY
переменную среды -noFigureWindows
[ВСЕ]: безголовый режим, никакие цифры не будут отображаться -nodesktop
[ВСЕ]: IDE не запущена, вместо командной строки
Поскольку у меня есть доступ толькодля установки MATLAB в Windows, я был бы благодарен, если бы кто-нибудь смог повторить следующие эксперименты в UNIX, запустив MATLAB с параметром -nodisplay
или запустив без установленной переменной окружения DISPLAY
, в сочетании с -nodisplay
и-nojvm
options.
matlab -nodesktop
» [usejava('jvm'),usejava('awt'),usejava('mwt'),usejava('Desktop')]
ans =
1 1 1 0
» get(0,'ScreenSize')
ans =
1 1 1600 1024
» feature('ShowFigureWindows')
ans =
1
» questdlg('?','?');
[works fine]
» plot(1:10)
[works fine]
matlab -noFigureWindows
» [usejava('jvm'),usejava('awt'),usejava('mwt'),usejava('Desktop')]
ans =
1 1 1 1
» get(0,'ScreenSize')
ans =
1 1 1600 1024
» feature('ShowFigureWindows')
ans =
0
» questdlg('?','?');
Warning: This functionality is no longer supported ....
» plot(1:10)
[no plot]
matlab -nodesktop -noFigureWindows
» [usejava('jvm'),usejava('awt'),usejava('mwt'),usejava('Desktop')]
ans =
1 1 1 0
» get(0,'ScreenSize')
ans =
1 1 1600 1024
» feature('ShowFigureWindows')
ans =
0
» questdlg('?','?');
Warning: This functionality is no longer supported ....
» plot(1:10)
[no plot]
В заключениеn, это тест, который я бы использовал для получения согласованных результатов на разных платформах:
if usejava('jvm') && ~feature('ShowFigureWindows')
%# use text-based alternative (input)
else
%# use GUI dialogs (questdlg)
end
Некоторые ссылки: