Ошибки при запуске файла JavaFX .jar в Ubuntu - PullRequest
0 голосов
/ 05 марта 2019

Я пытаюсь заставить приложение JavaFX, которое я сделал в Windows, работать на Ubuntu. Я сделал файл .jar, и он отлично работает в Windows 10, но не работает в Ubuntu. Независимо от того, дважды ли я щелкаю по нему с рабочего стола (с включенным выполнением в качестве исполняемого файла) или запускаю из терминала, я получаю следующие ошибки:

javac myApp.jar или javac myApp

error: Class names, 'myApp.jar', are only accepted if annotation processing is explicitly requested

javac -cp myApp.jar или javac -cp myApp

javac: no source files

Это ошибка, возникающая при запуске java -jar myApp.jar:

Could not find or load main class Main
Caused by: java.lang.NoClassDefFoundError: javarx/application/Application

Это мой файл манифеста:

Manifest-Version: 1.0
Implementation-Title: 
Implementation-Version: 
Permissions: sandbox
JavaFX-Version: 8.0
Class-Path: 
Created-By: JavaFX Packager
Implementation-Vendor: 
Main-Class: Main

Я установил Java с помощью команды apt install default-jre. Я также установил JavaFX.

Я думаю, что может быть какая-то проблема с тем, откуда приложение пытается получить свою библиотеку JavaFX, но я не уверен, что это или как это исправить.

Ответы [ 2 ]

0 голосов
/ 06 марта 2019

Очевидно, чтобы получить JavaFX с вашим дистрибутивом Java, вы должны загрузить его из Oracle вместо обычного openjdk-8-jre. Я получил свое решение от этого веб-сайта . Спасибо всем, кто помог.

0 голосов
/ 05 марта 2019
Пакет

default-jre установит Open JDK 11 в Ubuntu Bionic. Java 11 удалила JavaFX из дистрибутива по умолчанию .Эти бинарные файлы теперь поставляются отдельно от JDK, вы можете получить их из Maven Central .

. Перейдите на более низкую версию JRE / JDK или перепакуйте приложение, чтобы включить бинарные файлы JavaFX.так что он может работать с Java 11.

...