2016-01-02 7 views
3

Я не могу запустить jar-файлы приложений JavaFX на своей виртуальной машине Ubuntu, и я не знаю почему. Он просто говорит, что он не может найти главный файл банки. Другие банки, например, приложения Swing работают нормально. Это то, что я получаю, когда я бегу java -version на Ubuntu:Запуск JavaFX jar на Ubuntu

enter image description here

Похоже, это Java 8, где JavaFX должна быть включена по умолчанию, так почему я не могу запустить баночки?

Edit: баночка состоит из одного класса, который выглядит следующим образом:

import javafx.application.Application; 
import javafx.stage.Stage; 

public class Main extends Application { 
     public static void main(String[] args) {launch(args);} 
     public void start(Stage ps) { 
       ps.show(); 
     } 
} 

И он был создан с помощью команды jar cfe javafxjar.jar Main Main.class

Сосуд выполняет без проблем на Windows 10, но не может с этим сообщением на Ubuntu: enter image description here

+1

Возможно, эти банки не содержат основной класс или на него не ссылаются надлежащим образом. Выполняют ли те же файлы jar в разных средах? Для дальнейших советов вы должны разместить дополнительную информацию о файле jar, который вы пытаетесь выполнить. – hotzst

+0

Редактировал с дополнительной информацией, надеюсь, что это поможет кому-то диагностировать проблему. –

+0

Эй @ Justsomeguy, у меня такая же проблема с моим Ubuntu. Даже самая простая программа «Hello World» (которая работает в Windows) не запускается из-за ошибки «не найти или загрузить основной класс». Удалось ли вам решить проблему? – OmriSoudry

ответ

0

это может быть связано с JAVA_TOOL_OPTIONS:

$ unset JAVA_TOOL_OPTIONS 
$ java -jar javafxjar.jar 
0

Сегодня я также столкнулся с этой проблемой.

В моем случае причина была OpenJDK. По умолчанию он не содержит OpenJFX.

Решение было: sudo apt-get install openjfx

А теперь все работает как шарм.

Смежные вопросы