Распространяет ли SWT JAR, который работает в любой поддерживаемой операционной системе? - PullRequest
4 голосов
/ 10 июня 2009

Проект SWT в настоящее время поддерживает один дистрибутив для каждой поддерживаемой операционной системы. Например:

  • swt-3.4.2-win32-win32-x86.zip
  • swt-3.4.2-gtk-linux-x86.zip
  • swt-3.4.2-carbon-macosx.zip

Существует ли распространяемый дистрибутив, который просто правильно делает, независимо от того, в какой операционной системе работает приложение?

Ответы [ 2 ]

9 голосов
/ 11 июня 2009

Нет, нет, и вы не можете сделать ни один из отдельных дистрибутивов SWT. Это связано с тем, что каждая комбинация ОС / оконной системы / архитектуры имеет свою реализацию каждого из классов SWT. Например, если ваш код ссылается на org.eclipse.swt.widgets.Button, JVM не может узнать, требуется ли вам реализация класса win32, Mac / Carbon или Mac / Cocoa.

Вы могли бы сделать это самостоятельно, написав класс загрузчика, который определил платформу, архитектуру и систему управления окнами, а затем загрузил нужный JAR. Или разработайте приложение, используя равноденствие, и оно может автоматически загрузить подходящий плагин SWT. Но вы не можете сделать это ни с одним из неизмененных дистрибутивов SWT.

0 голосов
/ 10 июня 2009

Насколько мне известно, нет: эти продукты Eclipse всегда распространяются на платформу

...