Bereiten Sie die Umgebung für Java11 und JavaFx mit Ubuntu 18.4 vor

Umgebung

ubuntu

___@kubuntu:~$ lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 18.04.1 LTS
Release:	18.04
Codename:	bionic

Wenn Sie Java setzen, wird es so sein

___@kubuntu:~$ java --version
opensdk 11.0.1 2018-10-16
OpenJDK Runtime Environment 18.9 (build 11.0.1+13)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.1+13, mixed mode)

___@kubuntu:~$ javac --version
javac 11.0.1

Installieren Sie openjdk

Ab dem 18. November 2018 wird openjdk10 installiert, wenn Sie openjdk-11-jdk mit apt installieren. Es scheint in der Zukunft zu wechseln

Dieses Mal installieren Sie java11 mit sdkman

  1. Sie können sdkman installieren, indem Sie https://sdkman.io/install folgen
  2. Sie können java11 installieren, indem Sie https://sdkman.io/sdks folgen
  3. Überprüfen Sie mit Java - Version und Java - Version

Der Hauptteil von Java bei Installation mit sdkman

/home/Nutzername/.sdkman/candidates/java/11.0.1-open

Es ist in

Schreiben Sie den Pfad hier, wenn Sie jdk mit Intellij usw. angeben.

Laden Sie javaFx herunter

  1. Download von https://openjfx.io/

Dieses Mal habe ich beschlossen, es in / opt zu platzieren

/opt/openjfx-11.0.1_linux-x64_bin-sdk/
└── javafx-sdk-11.0.1
    ├── legal
    ...Abkürzung
    └── lib
    ...Abkürzung

Laufen Sie mit Intellij

Erstellen Sie ein Javafx-Projekt

Wie man es mit Bezug auf andere macht

Einstellungen, bei denen diesmal kein Gradle verwendet wird

  1. Schreiben Sie den Code entsprechend. Jede Probe ist in Ordnung intelij_sample.png

  2. Drücken Sie oben links auf [Main ▼], um die Bearbeitungskonfigurationen zu öffnen

  3. Schreiben Sie Einstellungen wie jdk editconfig.png

  4. Stellen Sie die VM-Option wie folgt ein vmoption.png

--module-path=/opt/openjfx-11.0.1_linux-x64_bin-sdk/javafx-sdk-11.0.1/lib
--add-modules=javafx.controls
--add-modules=javafx.swing
--add-modules=javafx.base
--add-modules=javafx.fxml
--add-modules=javafx.media
--add-modules=javafx.web
  1. Drücken Sie OK
  2. Mit Umschalt + F10 ausführen

Suchtpunkt

Wenn Sie normal im Internet suchen, gibt es viele Artikel, die nur javafx.controls enthalten, was unvollständig ist. In diesem Zustand wird die folgende Ausnahme angezeigt, also schließen Sie alle Module ein. cannotexecute.png

/home/___/.sdkman/candidates/java/11.0.1-open/bin/java -Djava.library.path=/opt/openjfx-11.0.1_linux-x64_bin-sdk/javafx-sdk-11.0.1/lib --module-path=/opt/openjfx-11.0.1_linux-x64_bin-sdk/javafx-sdk-11.0.1/lib --add-modules=javafx.controls -javaagent:/home/___/.local/share/JetBrains/Toolbox/apps/IDEA-U/ch-0/182.5107.16/lib/idea_rt.jar=43339:/home/___/.local/share/JetBrains/Toolbox/apps/IDEA-U/ch-0/182.5107.16/bin -Dfile.encoding=UTF-8 -classpath /home/___/sandbox/javafxtry/out/production/javafxtry:/opt/openjfx-11.0.1_linux-x64_bin-sdk/javafx-sdk-11.0.1/lib/src.zip:/opt/openjfx-11.0.1_linux-x64_bin-sdk/javafx-sdk-11.0.1/lib/javafx-swt.jar:/opt/openjfx-11.0.1_linux-x64_bin-sdk/javafx-sdk-11.0.1/lib/javafx.web.jar:/opt/openjfx-11.0.1_linux-x64_bin-sdk/javafx-sdk-11.0.1/lib/javafx.base.jar:/opt/openjfx-11.0.1_linux-x64_bin-sdk/javafx-sdk-11.0.1/lib/javafx.fxml.jar:/opt/openjfx-11.0.1_linux-x64_bin-sdk/javafx-sdk-11.0.1/lib/javafx.media.jar:/opt/openjfx-11.0.1_linux-x64_bin-sdk/javafx-sdk-11.0.1/lib/javafx.swing.jar:/opt/openjfx-11.0.1_linux-x64_bin-sdk/javafx-sdk-11.0.1/lib/javafx.controls.jar:/opt/openjfx-11.0.1_linux-x64_bin-sdk/javafx-sdk-11.0.1/lib/javafx.graphics.jar sample.Main
Exception in Application start method
java.lang.reflect.InvocationTargetException
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
	at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(LauncherImpl.java:464)
	at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplication(LauncherImpl.java:363)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
	at java.base/sun.launcher.LauncherHelper$FXHelper.main(LauncherHelper.java:1051)
Caused by: java.lang.RuntimeException: Exception in Application start method
	at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:900)
	at javafx.graphics/com.sun.javafx.application.LauncherImpl.lambda$launchApplication$2(LauncherImpl.java:195)
	at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: java.lang.IllegalAccessError: class com.sun.javafx.fxml.FXMLLoaderHelper (in unnamed module @0x2f837822) cannot access class com.sun.javafx.util.Utils (in module javafx.graphics) because module javafx.graphics does not export com.sun.javafx.util to unnamed module @0x2f837822
	at com.sun.javafx.fxml.FXMLLoaderHelper.<clinit>(FXMLLoaderHelper.java:38)
	at javafx.fxml.FXMLLoader.<clinit>(FXMLLoader.java:2056)
	at sample.Main.start(Main.java:13)
	at javafx.graphics/com.sun.javafx.application.LauncherImpl.lambda$launchApplication1$9(LauncherImpl.java:846)
	at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runAndWait$12(PlatformImpl.java:455)
	at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
	at java.base/java.security.AccessController.doPrivileged(Native Method)
	at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
	at javafx.graphics/com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
	at javafx.graphics/com.sun.glass.ui.gtk.GtkApplication._runLoop(Native Method)
	at javafx.graphics/com.sun.glass.ui.gtk.GtkApplication.lambda$runLoop$11(GtkApplication.java:277)
	... 1 more
Exception running application sample.Main

Process finished with exit code 1

Recommended Posts

Bereiten Sie die Umgebung für Java11 und JavaFx mit Ubuntu 18.4 vor
Bereiten Sie eine Scraping-Umgebung mit Docker und Java vor
Bereiten Sie die Umgebung für CUDA, Nvida-Driver und cuDNN auf einem Ubuntu 18.04-PC mit Geforce RTX2080 SUPER vor.
Bereiten Sie die Java-Entwicklungsumgebung mit Atom vor
Bereiten Sie die Java-Entwicklungsumgebung mit VS Code vor
Bereiten Sie die Formatumgebung für "Rails" (VScode) vor.
Bereiten Sie die JVM-Sprachentwicklungsumgebung mit WSL vor
Bereiten Sie die CentOS 8-Umgebung mit Sakura VPS vor
Erstellen Sie mit Docker eine Apache- und Tomcat-Umgebung. Übrigens Maven & Java Kooperation
Schreiben Sie den Code für java.io.File mit java.nio.Path und java.nio.Files neu
[Java] Umgebungskonstruktionsverfahren zum Entwickeln von Streben 1.3 mit Eclipse
Was Java-Ingenieure benötigen, um sich auf die Java 11-Version vorzubereiten
Erstellen Sie eine Java + Spring-Entwicklungsumgebung mit VirtualBox + Ubuntu (Xfce4).
So beenden Sie Docker für Mac und erstellen eine Docker-Entwicklungsumgebung mit Ubuntu + Vagrant
Bereiten Sie die Python3-Umgebung mit CentOS7 vor
JavaFX-Umgebungskonstruktion in Java 13
Java während und für Anweisungen
In Java 2D-Karte speichern und mit for-Anweisung drehen
Bereitstellen einer Java-Umgebung mit Windows Subsystem für Linux (WSL)
Suchen Sie die Adressklasse und den Adresstyp aus der IP-Adresse mit Java
Erste Schritte mit Java und Erstellen eines Ascii Doc-Editors mit JavaFX
Ändern Sie das Injektionsziel für jede Umgebung mit Spring Boot 2
Anfänger installieren Docker für Mac und bereiten die Betriebsumgebung php7.0 vor
[Java] Überprüfen Sie den Unterschied zwischen orElse und orElseGet mit IntStream
Ändern Sie den Einstellungswert für jede Umgebung mit Digdag (RubyOnRails).
Java legt die Hintergrundfarbe und das Hintergrundbild für PowerPoint-Dokumente fest
Greifen Sie mit Get on Android auf die Web-API zu und verarbeiten Sie Json (vorerst Java).
Verwenden Sie Java mit MSYS und Cygwin
Verteilte Ablaufverfolgung mit OpenCensus und Java
Installieren Sie Java und Tomcat mit Ansible
AWS SDK für Java 1.11.x und 2.x.
Umgebungsbau mit Docker für Anfänger
Java für Anfänger, Ausdrücke und Operatoren 1
Verwenden Sie JDBC mit Java und Scala.
Java für Anfänger, Ausdrücke und Operatoren 2
Informationen zur aktuellen Entwicklungsumgebung (Java 8)
Bis die Docker-Umgebung erstellt und der Ubuntu-Container gestartet und gestoppt wurde
Erstellen einer Java-Entwicklungsumgebung (für Mac)
Folgen Sie dem Link mit Selen (Java)
PDF und TIFF mit Java 8 ausgeben
Wie installiere ich die in Ubuntu verwendete Sprache und wie erstelle ich die Umgebung?
Durchsuchen Sie Java und MySQL PATH mit Umgebungsvariablen [Windows-Version]
Aktivieren Sie Java 8- und Java 11-SDKs unter Ubuntu
Ziehen Sie Dateien mit JavaFX per Drag & Drop
[Java & SpringBoot] Umgebungskonstruktion für Mac
Klassen und Instanzen Java für Anfänger
Mit Java verschlüsseln und mit C # entschlüsseln
Erstellen Sie mit Docker CE für Windows eine Webanwendungsentwicklungsumgebung, die Java, MySQL und Redis verwendet
Finden Sie die Adressklasse und den Adresstyp aus der IP-Adresse mit Java [Abkochung Nr. 2]
Warten Sie, bis PostgreSQL mit Docker gestartet ist, und starten Sie dann den WEB-Dienst
[Erstes Java] Machen Sie etwas, das vorerst mit Intellij funktioniert
[Java] Erstellen Sie mit dem Befehl jar eine JAR-Datei, die sowohl komprimiert als auch nicht komprimiert ist
Erstellen einer Entwicklungsumgebung für Java-Webanwendungen mit Docker für Mac Teil1
Setzen Sie Zabbix mit Docker in Ubuntu ein und überwachen Sie Docker auf demselben Host