Я сделал следующий небольшой файл с Eclipse, используя библиотеку SWT:
//all the imports
public class classtest {
public static void main(String[] args) {
Display display = new Display();
Shell shell = new Shell(display);
shell.setSize(300, 200);
shell.setText("Button Example");
//shell.setLayout(new RowLayout());
Button button = new Button(shell, SWT.PUSH);
button.setLocation(20,20);
button.setSize(new Point(70,30)); //new point seems to be optional?
button.setText("Buttontje ");
shell.open ();
while (!shell.isDisposed()) {
if (!display.readAndDispatch())
display.sleep();
}
display.dispose();
}
}
.jar, который я сделал из него, прекрасно работает на окнах.
Теперь я установил Java в Ubuntu, используя следующие команды (из http://www.ubuntugeek.com/how-to-install-oracle-java-7-in-ubuntu-12-04.html ):
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer
Казалось, что Java установлена нормально. Я запускаю файл, но ничего не происходит. Однако другая моя программа, использующая только JButtons и не имеющую библиотеки SWT, запускается.
Нужно ли устанавливать библиотеку SWT на целевой платформе, чтобы она работала? Но как мне его установить? Я думал, что библиотека SWT будет включена в .jar, чтобы она могла запускать макет SWT на каждой платформе, пока установлена java.
ОК, щелкните правой кнопкой мыши файл .jar и выберите «Свойства», затем нажмите «Права» и выберите «Разрешить запуск файла как программы»
.Выполнение файлов .jar в linux. Ubuntu немного отличается от такового в Windows. Здесь, когда вы просто дважды щелкнете по файлу, он откроется с архивом, поэтому попробуйте открыть его с помощью Java. если это не решило вашу проблему, то убедитесь, что вы правильно установили Java, -
java -version
javac
javaws
Если нет ошибок, переходите к следующей части, в противном случае установите его снова после полного удаления
Для выполнение по умолчанию, выполняемое Java, правой кнопкой мыши на любых .jar-файлах и выберите свойства. Нажмите на вкладку «Открыть с помощью». выберите Sun 'Oracle 7 Runtime'. И нажмите «закрыть», чтобы сохранить настройки.
Вы должны назвать это так:
java -jar yourfilehere
Я столкнулся с той же проблемой.
Этот ответ опоздал на 4 года, но я предлагаю открыть терминал в каталоге, в котором находится ваш файл .jar, и сделать:
java -jar "jarfilehere.jar"
Делать это в терминале вы, скорее всего, получите ошибки о том, почему он не работал.
(В моем случае классов JFX не было)