Open egabosh opened 1 month ago
Hi,
da scheint JavaFx zu fehlen. Das wird mit dem Programm nur für x86 mitgeliefert. Das müsstest du wahrscheinlich noch installieren. Hab da auch was im Netz gefunden:
https://forums.raspberrypi.com/viewtopic.php?t=330045
sudo apt install openjfx
Ich habe keinen Raspi am Laufen, kanns leider nicht testen.
Würde mich interessieren, obs damit dann geht.
Moin,
danke für die Hilfe! Leider hat das nicht geholfen.
$ sudo apt install openjfx
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
openjfx-source
The following NEW packages will be installed:
openjfx openjfx-source
0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
1 not fully installed or removed.
Need to get 6,081 kB/39.8 MB of archives.
After this operation, 6,714 kB of additional disk space will be used.
Get:1 http://archive.raspberrypi.org/debian bookworm/main arm64 openjfx arm64 11.0.11+1-3.1~bpo12+1~rpt1 [6,472 B]
Get:2 http://archive.raspberrypi.org/debian bookworm/main arm64 openjfx-source all 11.0.11+1-3.1~bpo12+1~rpt1 [6,075 kB]
Fetched 6,081 kB in 7s (932 kB/s)
Selecting previously unselected package openjfx.
(Reading database ... 186543 files and directories currently installed.)
Preparing to unpack .../openjfx_11.0.11+1-3.1~bpo12+1~rpt1_arm64.deb ...
Unpacking openjfx (11.0.11+1-3.1~bpo12+1~rpt1) ...
Selecting previously unselected package openjfx-source.
Preparing to unpack .../openjfx-source_11.0.11+1-3.1~bpo12+1~rpt1_all.deb ...
Unpacking openjfx-source (11.0.11+1-3.1~bpo12+1~rpt1) ...
Setting up openjfx (11.0.11+1-3.1~bpo12+1~rpt1) ...
Setting up openjfx-source (11.0.11+1-3.1~bpo12+1~rpt1) ...
Hier noch weitere Fehlermeldungen:
$ ./MTPlayer__Linux.sh
dann Java vom System
Okt. 22, 2024 1:33:43 PM com.sun.javafx.application.PlatformImpl startup
WARNUNG: Unsupported JavaFX configuration: classes were loaded from 'unnamed module @26ee6b5e'
Loading library prism_es2 from resource failed: java.lang.UnsatisfiedLinkError: /home/user/.openjfx/cache/21.0.3+2/aarch64/libprism_es2.so: /home/user/.openjfx/cache/21.0.3+2/aarch64/libprism_es2.so: Kann die Shared-Object-Datei nicht öffnen: Datei oder Verzeichnis nicht gefunden (Possible cause: can't load AMD 64 .so on a AARCH64 platform)
java.lang.UnsatisfiedLinkError: /home/user/.openjfx/cache/21.0.3+2/aarch64/libprism_es2.so: /home/user/.openjfx/cache/21.0.3+2/aarch64/libprism_es2.so: Kann die Shared-Object-Datei nicht öffnen: Datei oder Verzeichnis nicht gefunden (Possible cause: can't load AMD 64 .so on a AARCH64 platform)
at java.base/jdk.internal.loader.NativeLibraries.load(Native Method)
at java.base/jdk.internal.loader.NativeLibraries$NativeLibraryImpl.open(NativeLibraries.java:388)
at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:232)
at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:174)
at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2394)
at java.base/java.lang.Runtime.load0(Runtime.java:755)
at java.base/java.lang.System.load(System.java:1957)
at com.sun.glass.utils.NativeLibLoader.installLibraryFromResource(NativeLibLoader.java:220)
at com.sun.glass.utils.NativeLibLoader.loadLibraryFromResource(NativeLibLoader.java:200)
at com.sun.glass.utils.NativeLibLoader.loadLibraryInternal(NativeLibLoader.java:142)
at com.sun.glass.utils.NativeLibLoader.loadLibrary(NativeLibLoader.java:58)
at com.sun.prism.es2.ES2Pipeline.lambda$static$0(ES2Pipeline.java:63)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
at com.sun.prism.es2.ES2Pipeline.<clinit>(ES2Pipeline.java:52)
at java.base/java.lang.Class.forName0(Native Method)
at java.base/java.lang.Class.forName(Class.java:375)
at com.sun.prism.GraphicsPipeline.createPipeline(GraphicsPipeline.java:218)
at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.init(QuantumRenderer.java:92)
at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:125)
at java.base/java.lang.Thread.run(Thread.java:840)
Loading library prism_sw from resource failed: java.lang.UnsatisfiedLinkError: /home/user/.openjfx/cache/21.0.3+2/aarch64/libprism_sw.so: /home/user/.openjfx/cache/21.0.3+2/aarch64/libprism_sw.so: Kann die Shared-Object-Datei nicht öffnen: Datei oder Verzeichnis nicht gefunden (Possible cause: can't load AMD 64 .so on a AARCH64 platform)
java.lang.UnsatisfiedLinkError: /home/user/.openjfx/cache/21.0.3+2/aarch64/libprism_sw.so: /home/user/.openjfx/cache/21.0.3+2/aarch64/libprism_sw.so: Kann die Shared-Object-Datei nicht öffnen: Datei oder Verzeichnis nicht gefunden (Possible cause: can't load AMD 64 .so on a AARCH64 platform)
at java.base/jdk.internal.loader.NativeLibraries.load(Native Method)
at java.base/jdk.internal.loader.NativeLibraries$NativeLibraryImpl.open(NativeLibraries.java:388)
at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:232)
at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:174)
at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2394)
at java.base/java.lang.Runtime.load0(Runtime.java:755)
at java.base/java.lang.System.load(System.java:1957)
at com.sun.glass.utils.NativeLibLoader.installLibraryFromResource(NativeLibLoader.java:220)
at com.sun.glass.utils.NativeLibLoader.loadLibraryFromResource(NativeLibLoader.java:200)
at com.sun.glass.utils.NativeLibLoader.loadLibraryInternal(NativeLibLoader.java:142)
at com.sun.glass.utils.NativeLibLoader.loadLibrary(NativeLibLoader.java:58)
at com.sun.prism.sw.SWPipeline.lambda$static$0(SWPipeline.java:43)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
at com.sun.prism.sw.SWPipeline.<clinit>(SWPipeline.java:42)
at java.base/java.lang.Class.forName0(Native Method)
at java.base/java.lang.Class.forName(Class.java:375)
at com.sun.prism.GraphicsPipeline.createPipeline(GraphicsPipeline.java:218)
at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.init(QuantumRenderer.java:92)
at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:125)
at java.base/java.lang.Thread.run(Thread.java:840)
Loading library glass from resource failed: java.lang.UnsatisfiedLinkError: /home/user/.openjfx/cache/21.0.3+2/aarch64/libglass.so: /home/user/.openjfx/cache/21.0.3+2/aarch64/libglass.so: Kann die Shared-Object-Datei nicht öffnen: Datei oder Verzeichnis nicht gefunden (Possible cause: can't load AMD 64 .so on a AARCH64 platform)
java.lang.UnsatisfiedLinkError: /home/user/.openjfx/cache/21.0.3+2/aarch64/libglass.so: /home/user/.openjfx/cache/21.0.3+2/aarch64/libglass.so: Kann die Shared-Object-Datei nicht öffnen: Datei oder Verzeichnis nicht gefunden (Possible cause: can't load AMD 64 .so on a AARCH64 platform)
at java.base/jdk.internal.loader.NativeLibraries.load(Native Method)
at java.base/jdk.internal.loader.NativeLibraries$NativeLibraryImpl.open(NativeLibraries.java:388)
at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:232)
at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:174)
at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2394)
at java.base/java.lang.Runtime.load0(Runtime.java:755)
at java.base/java.lang.System.load(System.java:1957)
at com.sun.glass.utils.NativeLibLoader.installLibraryFromResource(NativeLibLoader.java:220)
at com.sun.glass.utils.NativeLibLoader.loadLibraryFromResource(NativeLibLoader.java:200)
at com.sun.glass.utils.NativeLibLoader.loadLibraryInternal(NativeLibLoader.java:142)
at com.sun.glass.utils.NativeLibLoader.loadLibrary(NativeLibLoader.java:58)
at com.sun.glass.ui.Application.loadNativeLibrary(Application.java:112)
at com.sun.glass.ui.Application.loadNativeLibrary(Application.java:120)
at com.sun.glass.ui.gtk.GtkApplication.lambda$static$1(GtkApplication.java:86)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
at com.sun.glass.ui.gtk.GtkApplication.<clinit>(GtkApplication.java:85)
at com.sun.glass.ui.gtk.GtkPlatformFactory.createApplication(GtkPlatformFactory.java:40)
at com.sun.glass.ui.Application.run(Application.java:146)
at com.sun.javafx.tk.quantum.QuantumToolkit.startup(QuantumToolkit.java:290)
at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:292)
at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:162)
at com.sun.javafx.application.LauncherImpl.startToolkit(LauncherImpl.java:651)
at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:671)
at com.sun.javafx.application.LauncherImpl.lambda$launchApplication$2(LauncherImpl.java:196)
at java.base/java.lang.Thread.run(Thread.java:840)
Loading library glassgtk3 from resource failed: java.lang.UnsatisfiedLinkError: /home/user/.openjfx/cache/21.0.3+2/aarch64/libglassgtk3.so: /home/user/.openjfx/cache/21.0.3+2/aarch64/libglassgtk3.so: Kann die Shared-Object-Datei nicht öffnen: Datei oder Verzeichnis nicht gefunden (Possible cause: can't load AMD 64 .so on a AARCH64 platform)
java.lang.UnsatisfiedLinkError: /home/user/.openjfx/cache/21.0.3+2/aarch64/libglassgtk3.so: /home/user/.openjfx/cache/21.0.3+2/aarch64/libglassgtk3.so: Kann die Shared-Object-Datei nicht öffnen: Datei oder Verzeichnis nicht gefunden (Possible cause: can't load AMD 64 .so on a AARCH64 platform)
at java.base/jdk.internal.loader.NativeLibraries.load(Native Method)
at java.base/jdk.internal.loader.NativeLibraries$NativeLibraryImpl.open(NativeLibraries.java:388)
at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:232)
at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:174)
at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2394)
at java.base/java.lang.Runtime.load0(Runtime.java:755)
at java.base/java.lang.System.load(System.java:1957)
at com.sun.glass.utils.NativeLibLoader.installLibraryFromResource(NativeLibLoader.java:220)
at com.sun.glass.utils.NativeLibLoader.loadLibraryFromResource(NativeLibLoader.java:200)
at com.sun.glass.utils.NativeLibLoader.loadLibraryInternal(NativeLibLoader.java:142)
at com.sun.glass.utils.NativeLibLoader.loadLibrary(NativeLibLoader.java:58)
at com.sun.glass.ui.gtk.GtkApplication.lambda$new$5(GtkApplication.java:173)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
at com.sun.glass.ui.gtk.GtkApplication.<init>(GtkApplication.java:162)
at com.sun.glass.ui.gtk.GtkPlatformFactory.createApplication(GtkPlatformFactory.java:40)
at com.sun.glass.ui.Application.run(Application.java:146)
at com.sun.javafx.tk.quantum.QuantumToolkit.startup(QuantumToolkit.java:290)
at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:292)
at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:162)
at com.sun.javafx.application.LauncherImpl.startToolkit(LauncherImpl.java:651)
at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:671)
at com.sun.javafx.application.LauncherImpl.lambda$launchApplication$2(LauncherImpl.java:196)
at java.base/java.lang.Thread.run(Thread.java:840)
Gtk-Message: 13:33:43.406: Failed to load module "canberra-gtk-module"
[13:33:43] INFORMATION: Logfile anlegen: /home/user/.p2Mtplayer/Log
[13:33:43] INFORMATION: Konfig existiert nicht!
[13:33:43] INFORMATION: Weder Konfig noch Backup konnte geladen werden!
Loading library javafx_font from resource failed: java.lang.UnsatisfiedLinkError: /home/user/.openjfx/cache/21.0.3+2/aarch64/libjavafx_font.so: /home/user/.openjfx/cache/21.0.3+2/aarch64/libjavafx_font.so: Kann die Shared-Object-Datei nicht öffnen: Datei oder Verzeichnis nicht gefunden (Possible cause: can't load AMD 64 .so on a AARCH64 platform)
java.lang.UnsatisfiedLinkError: /home/user/.openjfx/cache/21.0.3+2/aarch64/libjavafx_font.so: /home/user/.openjfx/cache/21.0.3+2/aarch64/libjavafx_font.so: Kann die Shared-Object-Datei nicht öffnen: Datei oder Verzeichnis nicht gefunden (Possible cause: can't load AMD 64 .so on a AARCH64 platform)
at java.base/jdk.internal.loader.NativeLibraries.load(Native Method)
at java.base/jdk.internal.loader.NativeLibraries$NativeLibraryImpl.open(NativeLibraries.java:388)
at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:232)
at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:174)
at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2394)
at java.base/java.lang.Runtime.load0(Runtime.java:755)
at java.base/java.lang.System.load(System.java:1957)
at com.sun.glass.utils.NativeLibLoader.installLibraryFromResource(NativeLibLoader.java:220)
at com.sun.glass.utils.NativeLibLoader.loadLibraryFromResource(NativeLibLoader.java:200)
at com.sun.glass.utils.NativeLibLoader.loadLibraryInternal(NativeLibLoader.java:142)
at com.sun.glass.utils.NativeLibLoader.loadLibrary(NativeLibLoader.java:58)
at com.sun.javafx.font.PrismFontFactory.lambda$static$0(PrismFontFactory.java:97)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
at com.sun.javafx.font.PrismFontFactory.<clinit>(PrismFontFactory.java:95)
at com.sun.javafx.text.PrismTextLayout.<clinit>(PrismTextLayout.java:66)
at com.sun.javafx.text.PrismTextLayoutFactory.<clinit>(PrismTextLayoutFactory.java:33)
at com.sun.javafx.tk.quantum.QuantumToolkit.getTextLayoutFactory(QuantumToolkit.java:1157)
at com.sun.javafx.scene.control.skin.Utils.<clinit>(Utils.java:98)
at java.base/java.lang.Class.forName0(Native Method)
at java.base/java.lang.Class.forName(Class.java:467)
at com.sun.javafx.css.StyleManager.getURL(StyleManager.java:879)
at com.sun.javafx.css.StyleManager.loadStylesheetUnPrivileged(StyleManager.java:1097)
at com.sun.javafx.css.StyleManager.loadStylesheet(StyleManager.java:952)
at com.sun.javafx.css.StyleManager._setDefaultUserAgentStylesheet(StyleManager.java:1454)
at com.sun.javafx.css.StyleManager.setUserAgentStylesheets(StyleManager.java:1305)
at com.sun.javafx.application.PlatformImpl.lambda$_setPlatformUserAgentStylesheet$20(PlatformImpl.java:930)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
at com.sun.javafx.application.PlatformImpl._setPlatformUserAgentStylesheet(PlatformImpl.java:929)
at com.sun.javafx.application.PlatformImpl.setPlatformUserAgentStylesheet(PlatformImpl.java:722)
at com.sun.javafx.application.PlatformImpl.setDefaultPlatformUserAgentStylesheet(PlatformImpl.java:686)
at javafx.scene.control.Control.<clinit>(Control.java:98)
at de.p2tools.p2lib.dialogs.dialog.P2DialogExtra.<init>(P2DialogExtra.java:48)
at de.p2tools.mtplayer.gui.startdialog.StartDialogController.<init>(StartDialogController.java:82)
at de.p2tools.mtplayer.controller.ProgStartBeforeGui.workBeforeGui(ProgStartBeforeGui.java:53)
at de.p2tools.mtplayer.MTPlayer.start(MTPlayer.java:55)
at com.sun.javafx.application.LauncherImpl.lambda$launchApplication1$9(LauncherImpl.java:839)
at com.sun.javafx.application.PlatformImpl.lambda$runAndWait$12(PlatformImpl.java:483)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:456)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:455)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95)
at com.sun.glass.ui.gtk.GtkApplication._runLoop(Native Method)
at com.sun.glass.ui.gtk.GtkApplication.lambda$runLoop$10(GtkApplication.java:263)
at java.base/java.lang.Thread.run(Thread.java:840)
Loading library javafx_font_freetype from resource failed: java.lang.UnsatisfiedLinkError: /home/user/.openjfx/cache/21.0.3+2/aarch64/libjavafx_font_freetype.so: /home/user/.openjfx/cache/21.0.3+2/aarch64/libjavafx_font_freetype.so: Kann die Shared-Object-Datei nicht öffnen: Datei oder Verzeichnis nicht gefunden (Possible cause: can't load AMD 64 .so on a AARCH64 platform)
java.lang.UnsatisfiedLinkError: /home/user/.openjfx/cache/21.0.3+2/aarch64/libjavafx_font_freetype.so: /home/user/.openjfx/cache/21.0.3+2/aarch64/libjavafx_font_freetype.so: Kann die Shared-Object-Datei nicht öffnen: Datei oder Verzeichnis nicht gefunden (Possible cause: can't load AMD 64 .so on a AARCH64 platform)
at java.base/jdk.internal.loader.NativeLibraries.load(Native Method)
at java.base/jdk.internal.loader.NativeLibraries$NativeLibraryImpl.open(NativeLibraries.java:388)
at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:232)
at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:174)
at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2394)
at java.base/java.lang.Runtime.load0(Runtime.java:755)
at java.base/java.lang.System.load(System.java:1957)
at com.sun.glass.utils.NativeLibLoader.installLibraryFromResource(NativeLibLoader.java:220)
at com.sun.glass.utils.NativeLibLoader.loadLibraryFromResource(NativeLibLoader.java:200)
at com.sun.glass.utils.NativeLibLoader.loadLibraryInternal(NativeLibLoader.java:142)
at com.sun.glass.utils.NativeLibLoader.loadLibrary(NativeLibLoader.java:58)
at com.sun.javafx.font.freetype.OSFreetype.lambda$static$0(OSFreetype.java:38)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
at com.sun.javafx.font.freetype.OSFreetype.<clinit>(OSFreetype.java:37)
at com.sun.javafx.font.freetype.FTFactory.getFactory(FTFactory.java:47)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:569)
at com.sun.javafx.font.PrismFontFactory.getFontFactory(PrismFontFactory.java:208)
at com.sun.javafx.font.PrismFontFactory.getFontFactory(PrismFontFactory.java:197)
at com.sun.prism.GraphicsPipeline.getFontFactory(GraphicsPipeline.java:156)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:569)
at com.sun.javafx.font.PrismFontLoader.getFontFactoryFromPipeline(PrismFontLoader.java:271)
at com.sun.javafx.font.PrismFontLoader.loadFont(PrismFontLoader.java:212)
at javafx.scene.text.Font.<init>(Font.java:346)
at javafx.scene.text.Font.getDefault(Font.java:110)
at javafx.scene.CssStyleHelper.<clinit>(CssStyleHelper.java:1686)
at javafx.scene.Node.reapplyCss(Node.java:9482)
at javafx.scene.Node.reapplyCSS(Node.java:9445)
at javafx.scene.Node.invalidatedScenes(Node.java:1068)
at javafx.scene.Node.setScenes(Node.java:1133)
at javafx.scene.Parent.scenesChanged(Parent.java:773)
at javafx.scene.Node.invalidatedScenes(Node.java:1066)
at javafx.scene.Node.setScenes(Node.java:1133)
at javafx.scene.Scene$8.invalidated(Scene.java:1244)
at javafx.beans.property.ObjectPropertyBase.markInvalid(ObjectPropertyBase.java:112)
at javafx.beans.property.ObjectPropertyBase.set(ObjectPropertyBase.java:147)
at javafx.scene.Scene.setRoot(Scene.java:1196)
at javafx.scene.Scene.<init>(Scene.java:360)
at javafx.scene.Scene.<init>(Scene.java:211)
at de.p2tools.p2lib.dialogs.dialog.P2Dialog.init(P2Dialog.java:88)
at de.p2tools.p2lib.dialogs.dialog.P2DialogExtra.init(P2DialogExtra.java:149)
at de.p2tools.mtplayer.gui.startdialog.StartDialogController.<init>(StartDialogController.java:85)
at de.p2tools.mtplayer.controller.ProgStartBeforeGui.workBeforeGui(ProgStartBeforeGui.java:53)
at de.p2tools.mtplayer.MTPlayer.start(MTPlayer.java:55)
at com.sun.javafx.application.LauncherImpl.lambda$launchApplication1$9(LauncherImpl.java:839)
at com.sun.javafx.application.PlatformImpl.lambda$runAndWait$12(PlatformImpl.java:483)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:456)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:455)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95)
at com.sun.glass.ui.gtk.GtkApplication._runLoop(Native Method)
at com.sun.glass.ui.gtk.GtkApplication.lambda$runLoop$10(GtkApplication.java:263)
at java.base/java.lang.Thread.run(Thread.java:840)
Exception in Application start method
Loading library javafx_font_pango from resource failed: java.lang.UnsatisfiedLinkError: /home/user/.openjfx/cache/21.0.3+2/aarch64/libjavafx_font_pango.so: /home/user/.openjfx/cache/21.0.3+2/aarch64/libjavafx_font_pango.so: Kann die Shared-Object-Datei nicht öffnen: Datei oder Verzeichnis nicht gefunden (Possible cause: can't load AMD 64 .so on a AARCH64 platform)
java.lang.UnsatisfiedLinkError: /home/user/.openjfx/cache/21.0.3+2/aarch64/libjavafx_font_pango.so: /home/user/.openjfx/cache/21.0.3+2/aarch64/libjavafx_font_pango.so: Kann die Shared-Object-Datei nicht öffnen: Datei oder Verzeichnis nicht gefunden (Possible cause: can't load AMD 64 .so on a AARCH64 platform)
at java.base/jdk.internal.loader.NativeLibraries.load(Native Method)
at java.base/jdk.internal.loader.NativeLibraries$NativeLibraryImpl.open(NativeLibraries.java:388)
at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:232)
at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:174)
at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2394)
at java.base/java.lang.Runtime.load0(Runtime.java:755)
at java.base/java.lang.System.load(System.java:1957)
at com.sun.glass.utils.NativeLibLoader.installLibraryFromResource(NativeLibLoader.java:220)
at com.sun.glass.utils.NativeLibLoader.loadLibraryFromResource(NativeLibLoader.java:200)
at com.sun.glass.utils.NativeLibLoader.loadLibraryInternal(NativeLibLoader.java:142)
at com.sun.glass.utils.NativeLibLoader.loadLibrary(NativeLibLoader.java:58)
at com.sun.javafx.font.freetype.OSPango.lambda$static$0(OSPango.java:37)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
at com.sun.javafx.font.freetype.OSPango.<clinit>(OSPango.java:36)
at com.sun.javafx.font.freetype.PangoGlyphLayout.<clinit>(PangoGlyphLayout.java:45)
at com.sun.javafx.font.freetype.FTFactory.createGlyphLayout(FTFactory.java:87)
at com.sun.javafx.text.GlyphLayout.newInstance(GlyphLayout.java:407)
at com.sun.javafx.text.GlyphLayout.<clinit>(GlyphLayout.java:402)
at com.sun.javafx.text.PrismTextLayout.buildRuns(PrismTextLayout.java:818)
at com.sun.javafx.text.PrismTextLayout.layout(PrismTextLayout.java:1070)
at com.sun.javafx.text.PrismTextLayout.ensureLayout(PrismTextLayout.java:230)
at com.sun.javafx.text.PrismTextLayout.getBounds(PrismTextLayout.java:256)
at javafx.scene.text.Text.getLogicalBounds(Text.java:432)
at javafx.scene.text.Text.getYRendering(Text.java:1098)
at javafx.scene.text.Text$TextAttribute$11.computeValue(Text.java:1821)
at javafx.scene.text.Text$TextAttribute$11.computeValue(Text.java:1813)
at javafx.beans.binding.ObjectBinding.get(ObjectBinding.java:168)
at javafx.beans.binding.ObjectExpression.getValue(ObjectExpression.java:49)
at com.sun.javafx.binding.ExpressionHelper.addListener(ExpressionHelper.java:64)
at javafx.beans.binding.ObjectBinding.addListener(ObjectBinding.java:86)
at javafx.beans.property.ObjectPropertyBase.bind(ObjectPropertyBase.java:174)
at javafx.scene.text.Text$TextAttribute.caretShapeProperty(Text.java:1829)
at javafx.scene.text.Text.caretShapeProperty(Text.java:953)
at javafx.scene.control.skin.TextFieldSkin.<init>(TextFieldSkin.java:246)
at javafx.scene.control.TextField.createDefaultSkin(TextField.java:257)
at javafx.scene.control.Control.doProcessCSS(Control.java:910)
at javafx.scene.control.Control$1.doProcessCSS(Control.java:88)
at com.sun.javafx.scene.control.ControlHelper.processCSSImpl(ControlHelper.java:68)
at com.sun.javafx.scene.NodeHelper.processCSS(NodeHelper.java:147)
at javafx.scene.Parent.doProcessCSS(Parent.java:1401)
at javafx.scene.Parent$1.doProcessCSS(Parent.java:125)
at com.sun.javafx.scene.ParentHelper.processCSSImpl(ParentHelper.java:98)
at com.sun.javafx.scene.NodeHelper.processCSS(NodeHelper.java:147)
at javafx.scene.Parent.doProcessCSS(Parent.java:1401)
at javafx.scene.Parent$1.doProcessCSS(Parent.java:125)
at com.sun.javafx.scene.ParentHelper.processCSSImpl(ParentHelper.java:98)
at com.sun.javafx.scene.NodeHelper.processCSS(NodeHelper.java:147)
at javafx.scene.Parent.doProcessCSS(Parent.java:1401)
at javafx.scene.Parent$1.doProcessCSS(Parent.java:125)
at com.sun.javafx.scene.ParentHelper.processCSSImpl(ParentHelper.java:98)
at com.sun.javafx.scene.control.ControlHelper.superProcessCSSImpl(ControlHelper.java:63)
at com.sun.javafx.scene.control.ControlHelper.superProcessCSS(ControlHelper.java:55)
at javafx.scene.control.Control.doProcessCSS(Control.java:913)
at javafx.scene.control.Control$1.doProcessCSS(Control.java:88)
at com.sun.javafx.scene.control.ControlHelper.processCSSImpl(ControlHelper.java:68)
at com.sun.javafx.scene.NodeHelper.processCSS(NodeHelper.java:147)
at javafx.scene.Parent.doProcessCSS(Parent.java:1401)
at javafx.scene.Parent$1.doProcessCSS(Parent.java:125)
at com.sun.javafx.scene.ParentHelper.processCSSImpl(ParentHelper.java:98)
at com.sun.javafx.scene.NodeHelper.processCSS(NodeHelper.java:147)
at javafx.scene.Parent.doProcessCSS(Parent.java:1401)
at javafx.scene.Parent$1.doProcessCSS(Parent.java:125)
at com.sun.javafx.scene.ParentHelper.processCSSImpl(ParentHelper.java:98)
at com.sun.javafx.scene.NodeHelper.processCSS(NodeHelper.java:147)
at javafx.scene.Parent.doProcessCSS(Parent.java:1401)
at javafx.scene.Parent$1.doProcessCSS(Parent.java:125)
at com.sun.javafx.scene.ParentHelper.processCSSImpl(ParentHelper.java:98)
at com.sun.javafx.scene.NodeHelper.processCSS(NodeHelper.java:147)
at javafx.scene.Parent.doProcessCSS(Parent.java:1401)
at javafx.scene.Parent$1.doProcessCSS(Parent.java:125)
at com.sun.javafx.scene.ParentHelper.processCSSImpl(ParentHelper.java:98)
at com.sun.javafx.scene.NodeHelper.processCSS(NodeHelper.java:147)
at javafx.scene.Parent.doProcessCSS(Parent.java:1401)
at javafx.scene.Parent$1.doProcessCSS(Parent.java:125)
at com.sun.javafx.scene.ParentHelper.processCSSImpl(ParentHelper.java:98)
at com.sun.javafx.scene.control.ControlHelper.superProcessCSSImpl(ControlHelper.java:63)
at com.sun.javafx.scene.control.ControlHelper.superProcessCSS(ControlHelper.java:55)
at javafx.scene.control.Control.doProcessCSS(Control.java:913)
at javafx.scene.control.Control$1.doProcessCSS(Control.java:88)
at com.sun.javafx.scene.control.ControlHelper.processCSSImpl(ControlHelper.java:68)
at com.sun.javafx.scene.NodeHelper.processCSS(NodeHelper.java:147)
at javafx.scene.Parent.doProcessCSS(Parent.java:1401)
at javafx.scene.Parent$1.doProcessCSS(Parent.java:125)
at com.sun.javafx.scene.ParentHelper.processCSSImpl(ParentHelper.java:98)
at com.sun.javafx.scene.NodeHelper.processCSS(NodeHelper.java:147)
at javafx.scene.Parent.doProcessCSS(Parent.java:1401)
at javafx.scene.Parent$1.doProcessCSS(Parent.java:125)
at com.sun.javafx.scene.ParentHelper.processCSSImpl(ParentHelper.java:98)
at com.sun.javafx.scene.NodeHelper.processCSS(NodeHelper.java:147)
at javafx.scene.Node.processCSS(Node.java:9555)
at javafx.scene.Scene.doCSSPass(Scene.java:587)
at javafx.scene.Scene$ScenePulseListener.pulse(Scene.java:2595)
at com.sun.javafx.tk.Toolkit.lambda$runPulse$2(Toolkit.java:401)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at com.sun.javafx.tk.Toolkit.runPulse(Toolkit.java:400)
at com.sun.javafx.tk.Toolkit.firePulse(Toolkit.java:430)
at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:592)
at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:572)
at com.sun.javafx.tk.quantum.QuantumToolkit.pulseFromQueue(QuantumToolkit.java:565)
at com.sun.javafx.tk.quantum.QuantumToolkit.lambda$runToolkit$11(QuantumToolkit.java:352)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95)
at com.sun.glass.ui.gtk.GtkApplication._runLoop(Native Method)
at com.sun.glass.ui.gtk.GtkApplication.lambda$runLoop$10(GtkApplication.java:263)
at java.base/java.lang.Thread.run(Thread.java:840)
Exception in thread "main" java.lang.RuntimeException: Exception in Application start method
at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:893)
at com.sun.javafx.application.LauncherImpl.lambda$launchApplication$2(LauncherImpl.java:196)
at java.base/java.lang.Thread.run(Thread.java:840)
Caused by: java.lang.UnsatisfiedLinkError: 'void com.sun.glass.ui.gtk.GtkWindow._updateViewSize(long)'
at com.sun.glass.ui.gtk.GtkWindow._updateViewSize(Native Method)
at com.sun.glass.ui.Window.setView(Window.java:377)
at com.sun.javafx.tk.quantum.WindowStage.lambda$setScene$0(WindowStage.java:271)
at com.sun.javafx.tk.quantum.QuantumToolkit.runWithRenderLock(QuantumToolkit.java:442)
at com.sun.javafx.tk.quantum.WindowStage.setScene(WindowStage.java:270)
at javafx.stage.Window$12.invalidated(Window.java:1162)
at javafx.beans.property.BooleanPropertyBase.markInvalid(BooleanPropertyBase.java:110)
at javafx.beans.property.BooleanPropertyBase.set(BooleanPropertyBase.java:145)
at javafx.stage.Window.setShowing(Window.java:1239)
at javafx.stage.Window.show(Window.java:1254)
at javafx.stage.Stage.show(Stage.java:277)
at javafx.stage.Stage.showAndWait(Stage.java:467)
at de.p2tools.p2lib.dialogs.dialog.P2Dialog.showDialog(P2Dialog.java:176)
at de.p2tools.p2lib.dialogs.dialog.P2DialogExtra.showDialog(P2DialogExtra.java:154)
at de.p2tools.p2lib.dialogs.dialog.P2Dialog.init(P2Dialog.java:132)
at de.p2tools.p2lib.dialogs.dialog.P2DialogExtra.init(P2DialogExtra.java:149)
at de.p2tools.mtplayer.gui.startdialog.StartDialogController.<init>(StartDialogController.java:85)
at de.p2tools.mtplayer.controller.ProgStartBeforeGui.workBeforeGui(ProgStartBeforeGui.java:53)
at de.p2tools.mtplayer.MTPlayer.start(MTPlayer.java:55)
at com.sun.javafx.application.LauncherImpl.lambda$launchApplication1$9(LauncherImpl.java:839)
at com.sun.javafx.application.PlatformImpl.lambda$runAndWait$12(PlatformImpl.java:483)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:456)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:455)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95)
at com.sun.glass.ui.gtk.GtkApplication._runLoop(Native Method)
at com.sun.glass.ui.gtk.GtkApplication.lambda$runLoop$10(GtkApplication.java:263)
... 1 more
Wäre schön wenn sich eine Lösung finden lässt. :-)
Grüße olli
ich habe noch alte Raspberry 2, werde mal damit experimentieren. Vielleicht geht da was. Muss die aber erst mal mit dem aktuellem BS versehen.
Das ist sehr nett, vielen Dank! Falls ich noch was tun kann sag gern Bescheid. Könnte ggf. einen Test-Pi mit SSH und noVNC-Zugang bereitstellen falls das hilft. Ein alter Pi2 ist vermutlich etwas schwach dafür. Aber vielleicht genügt es ja um den Fehler zu reproduzieren
Hi,
habe jetzt einiges versucht. Es wird wohl nix werden. Habe das Programm auf meinem Raspi zum Laufen gebracht, war aber einiges dafür zu tun. Es müssen Libs ausgetauscht werden und das Programm muss extra dafür übersetzt werden (bei mir 32Bit und das müsste für aarch64 extra gemacht werden). Auch habe ich die Fehlermeldungen beim Start nicht weg bekommen. Da stimmt also auch noch einiges nicht.
_WARNUNG: Unsupported JavaFX configuration: classes were loaded from 'unnamed module @1668511' OpenJDK Client VM warning: You have loaded library /home/emil/.openjfx/cache/20.0.1+2/arm/libprismes2.so which might have disabled stack guard. The VM will try to fix the stack guard now.
Man kann JavaFX-Programme auf dem Raspi starten, die müssen aber dafür gebaut werden. Das Programm in der Standardausführung startet nicht auf dem Pi (habs zumindest nicht hinbekommen). Leider.
Moin, vielen Dank für die Arbeit! Vielleicht macht es Sinn dafür ein AppImage oder Flatpak zu bauen wenn andere Bibliotheken benötigt werden. So hat der Austausch von Bibliotheken kein Einfluss auf das bestehende System und MTPlayer kann quasi in seinem eigenem Öko-System laufen. Hast du zufällig eine Liste von Bibliotkeken oder Schritten die nötig waren um das ans Laufen zu bekommen? Habe mich vor einigen Jahren mal mit AppImage beschäftigt und könnte dafür vielleicht eins bauen. Wüde anbieten das mal zu probieren.
Infos zum Bauen des Programms gibts da:
https://github.com/xaverW/MTPlayer/tree/master/build-infos
openjfx muss installiert sein und im build.gradle müssen die libs geändert werden:
javafx { version = "20.0.1" modules = ['javafx.controls'] }
und das:
implementation "org.openjfx:javafx-fxml:21:linux" implementation "org.openjfx:javafx-controls:21:linux" implementation "org.openjfx:javafx-graphics:21:linux" implementation "org.openjfx:javafx-base:21:linux"
implementation "org.openjfx:javafx-fxml:21:win" implementation "org.openjfx:javafx-controls:21:win" implementation "org.openjfx:javafx-graphics:21:win" implementation "org.openjfx:javafx-base:21:win"
implementation "org.openjfx:javafx-fxml:21:mac" implementation "org.openjfx:javafx-controls:21:mac" implementation "org.openjfx:javafx-graphics:21:mac" implementation "org.openjfx:javafx-base:21:mac"
muss gegen das getauscht werden:
implementation "org.openjfx:javafx-fxml:20:linux-arm32-monocle" implementation "org.openjfx:javafx-controls:20:linux-arm32-monocle" implementation "org.openjfx:javafx-graphics:20:linux-arm32-monocle" implementation "org.openjfx:javafx-base:20:linux-arm32-monocle"
bei dir dann wahrscheinlich:
implementation "org.openjfx:javafx-fxml:20:linux-aarch64" implementation "org.openjfx:javafx-controls:20:linux-aarch64" implementation "org.openjfx:javafx-graphics:20:linux-aarch64" implementation "org.openjfx:javafx-base:20:linux-aarch64"
Problem ist, dass die libs die das GUI bauen, auf Systemfunktionen zugreifen und deswegen müssen die zur System-Architektur passen.
Dann drück ich mal die Daumen :)
Moin,
hab bisher folgendes gemacht:
git clone https://github.com/xaverW/MTPlayer.git
apt install gradle openjfx
cd MTPlayer
gradle init
cp ./build-infos/build.gradle ./build.gradle
cp ./build-infos/settings.gradle ./settings.gradle
cp ./build-infos/gitignore ./.gitignore
Dann die Anpassungen in der build.gradle. Die sieht jetzt so aus:
plugins {
id 'application'
id "org.openjfx.javafxplugin" version "0.1.0"
id "org.beryx.runtime" version "1.13.1"
}
javafx {
version = "20.0.1"
modules = ['javafx.controls']
}
repositories {
mavenCentral()
flatDir {
dirs 'libs'
}
}
def programName = 'MTPlayer'
def jarName = 'MTPlayer.jar'
def theMainClass = 'de/p2tools/mtplayer/Main'
def fatJarDir = layout.buildDirectory.get().toString() + "/fatJar" + "/"
// ===========================================
// build project
// ===========================================
group 'de.p2tools'
application {
mainClass = theMainClass
}
dependencies {
implementation ':commons-cli-1.6.0'
implementation ':commons-io-2.12.0'
implementation ':commons-lang3-3.12.0'
implementation ':jackson-core-2.15.2'
implementation ':jackson-databind-2.15.2'
implementation ':jackson-annotations-2.15.2'
implementation ':xz-1.9'
implementation 'org.jsoup:jsoup:1.17.2'
implementation("com.squareup.okhttp3:okhttp:4.12.0")
implementation ':p2lib'
implementation ':controlsfx-11.1.3'
implementation "org.openjfx:javafx-fxml:20:linux-aarch64"
implementation "org.openjfx:javafx-controls:20:linux-aarch64"
implementation "org.openjfx:javafx-graphics:20:linux-aarch64"
implementation "org.openjfx:javafx-base:20:linux-aarch64"
}
java {
toolchain {
languageVersion = JavaLanguageVersion.of(17)
}
}
jar {
manifest {
attributes("Manifest-Version": "1.0",
"Main-Class": theMainClass);
}
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
}
tasks.register('fatJar', Jar) {
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
manifest.from jar.manifest
from {
configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) }
} {
exclude "META-INF/*.SF"
exclude "META-INF/*.DSA"
exclude "META-INF/*.RSA"
}
destinationDirectory.set(file(fatJarDir))
archiveFileName = jarName
with jar
}
runtime {
options = ['--strip-debug', '--compress', '2', '--no-header-files', '--no-man-pages']
modules = ['java.naming', 'java.xml']
}
tasks.withType(JavaCompile).configureEach {
options.encoding = 'UTF-8'
}
tasks.withType(Zip).configureEach { task ->
task.doLast {
//ant.checksum file: archiveFile.get().asFile
ant.checksum(algorithm: 'SHA-512', file: archiveFile.get().asFile)
}
}
Bekomme beim nächsten Schritt folgenden Fehler:
$ ./gradlew fatJar
openjdk version "17.0.13" 2024-10-15
OpenJDK Runtime Environment (build 17.0.13+11-Debian-2deb12u1)
OpenJDK 64-Bit Server VM (build 17.0.13+11-Debian-2deb12u1, mixed mode, sharing)
FAILURE: Build failed with an exception.
* What went wrong:
Could not determine java version from '17.0.13'.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org
bzw.:
./gradlew fatJar --stacktrace
openjdk version "17.0.13" 2024-10-15
OpenJDK Runtime Environment (build 17.0.13+11-Debian-2deb12u1)
OpenJDK 64-Bit Server VM (build 17.0.13+11-Debian-2deb12u1, mixed mode, sharing)
FAILURE: Build failed with an exception.
* What went wrong:
Could not determine java version from '17.0.13'.
* Try:
Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Exception is:
java.lang.IllegalArgumentException: Could not determine java version from '17.0.13'.
at org.gradle.api.JavaVersion.toVersion(JavaVersion.java:72)
at org.gradle.api.JavaVersion.current(JavaVersion.java:82)
at org.gradle.internal.jvm.UnsupportedJavaRuntimeException.assertUsingVersion(UnsupportedJavaRuntimeException.java:42)
at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:32)
at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:24)
at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:33)
at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:22)
at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:257)
at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:191)
at org.gradle.launcher.Main.doAction(Main.java:33)
at org.gradle.launcher.bootstrap.EntryPoint.run(EntryPoint.java:45)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:569)
at org.gradle.launcher.bootstrap.ProcessBootstrap.runNoExit(ProcessBootstrap.java:60)
at org.gradle.launcher.bootstrap.ProcessBootstrap.run(ProcessBootstrap.java:37)
at org.gradle.launcher.GradleMain.main(GradleMain.java:23)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:569)
at org.gradle.wrapper.BootstrapMainStarter.start(BootstrapMainStarter.java:31)
at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:108)
at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:61)
* Get more help at https://help.gradle.org
$ java -version
openjdk version "17.0.13" 2024-10-15
OpenJDK Runtime Environment (build 17.0.13+11-Debian-2deb12u1)
OpenJDK 64-Bit Server VM (build 17.0.13+11-Debian-2deb12u1, mixed mode, sharing)
Eine Idee?
Hi,
ich habe ein paar libs aktualisiert, die build-infos sind wieder aktuell. Ich bekam aber auch eine andere Fehlermeldung als du: Dass die Libs nicht gefunden werden??
Meine Java-Version:
openjdk version "17.0.13" 2024-10-15 OpenJDK Runtime Environment (build 17.0.13+11) OpenJDK 64-Bit Server VM (build 17.0.13+11, mixed mode, sharing)
scheint die gleiche wie bei dir zu sein.
Machst du das auf deinem PC (unter Linux) oder auf dem Raspi?
Das ist das build.gradle (wie deins) und damit gings es:
./gradlew fatJar
plugins { id 'application' id "org.openjfx.javafxplugin" version "0.1.0" id "org.beryx.runtime" version "1.13.1" } javafx { version = "20.0.1" modules = ['javafx.controls'] } repositories { mavenCentral() flatDir { dirs 'libs' } }
def programName = 'MTPlayer' def jarName = 'MTPlayer.jar' def theMainClass = 'de/p2tools/mtplayer/Main' def fatJarDir = layout.buildDirectory.get().toString() + "/fatJar" + "/"
// =========================================== // build project // =========================================== group 'de.p2tools' application { mainClass = theMainClass }
dependencies { implementation ':commons-cli-1.9.0' implementation ':commons-io-2.17.0' implementation ':commons-lang3-3.17.0'
implementation ':jackson-core-2.17.2'
implementation ':jackson-databind-2.17.2'
implementation ':jackson-annotations-2.17.2'
implementation ':xz-1.10'
implementation 'org.jsoup:jsoup:1.18.1'
implementation("com.squareup.okhttp3:okhttp:4.12.0")
implementation ':p2lib'
implementation ':controlsfx-11.2.1'
implementation "org.openjfx:javafx-fxml:20:linux-aarch64"
implementation "org.openjfx:javafx-controls:20:linux-aarch64"
implementation "org.openjfx:javafx-graphics:20:linux-aarch64"
implementation "org.openjfx:javafx-base:20:linux-aarch64"
}
java { toolchain { languageVersion = JavaLanguageVersion.of(17) } }
jar { manifest { attributes("Manifest-Version": "1.0", "Main-Class": theMainClass); } duplicatesStrategy = DuplicatesStrategy.EXCLUDE } tasks.register('fatJar', Jar) { duplicatesStrategy = DuplicatesStrategy.EXCLUDE manifest.from jar.manifest from { configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) } } { exclude "META-INF/.SF" exclude "META-INF/.DSA" exclude "META-INF/*.RSA" } destinationDirectory.set(file(fatJarDir)) archiveFileName = jarName with jar }
runtime { options = ['--strip-debug', '--compress', '2', '--no-header-files', '--no-man-pages'] modules = ['java.naming', 'java.xml'] }
tasks.withType(JavaCompile).configureEach { options.encoding = 'UTF-8' }
tasks.withType(Zip).configureEach { task -> task.doLast { //ant.checksum file: archiveFile.get().asFile ant.checksum(algorithm: 'SHA-512', file: archiveFile.get().asFile) } }
Am Fri, 15 Nov 2024 03:59:26 -0800 schrieb egabosh @.***>:
Moin,
hab bisher folgendes gemacht:
git clone https://github.com/xaverW/MTPlayer.git apt install gradle openjfx cd MTPlayer gradle init cp ./build-infos/build.gradle ./build.gradle cp ./build-infos/settings.gradle ./settings.gradle cp ./build-infos/gitignore ./.gitignore
Dann die Anpassungen in der build.gradle. Die sieht jetzt so aus:
plugins { id 'application' id "org.openjfx.javafxplugin" version "0.1.0" id "org.beryx.runtime" version "1.13.1" } javafx { version = "20.0.1" modules = ['javafx.controls'] } repositories { mavenCentral() flatDir { dirs 'libs' } } def programName = 'MTPlayer' def jarName = 'MTPlayer.jar' def theMainClass = 'de/p2tools/mtplayer/Main' def fatJarDir = layout.buildDirectory.get().toString() + "/fatJar" + "/" // =========================================== // build project // =========================================== group 'de.p2tools' application { mainClass = theMainClass } dependencies { implementation ':commons-cli-1.6.0' implementation ':commons-io-2.12.0' implementation ':commons-lang3-3.12.0' implementation ':jackson-core-2.15.2' implementation ':jackson-databind-2.15.2' implementation ':jackson-annotations-2.15.2' implementation ':xz-1.9' implementation 'org.jsoup:jsoup:1.17.2' implementation("com.squareup.okhttp3:okhttp:4.12.0") implementation ':p2lib' implementation ':controlsfx-11.1.3' implementation "org.openjfx:javafx-fxml:20:linux-aarch64" implementation "org.openjfx:javafx-controls:20:linux-aarch64" implementation "org.openjfx:javafx-graphics:20:linux-aarch64" implementation "org.openjfx:javafx-base:20:linux-aarch64" } java { toolchain { languageVersion = JavaLanguageVersion.of(17) } } jar { manifest { attributes("Manifest-Version": "1.0", "Main-Class": theMainClass); } duplicatesStrategy = DuplicatesStrategy.EXCLUDE } tasks.register('fatJar', Jar) { duplicatesStrategy = DuplicatesStrategy.EXCLUDE manifest.from jar.manifest from { configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) } } { exclude "META-INF/*.SF" exclude "META-INF/*.DSA" exclude "META-INF/*.RSA" } destinationDirectory.set(file(fatJarDir)) archiveFileName = jarName with jar } runtime { options = ['--strip-debug', '--compress', '2', '--no-header-files', '--no-man-pages'] modules = ['java.naming', 'java.xml'] } tasks.withType(JavaCompile).configureEach { options.encoding = 'UTF-8' } tasks.withType(Zip).configureEach { task -> task.doLast { //ant.checksum file: archiveFile.get().asFile ant.checksum(algorithm: 'SHA-512', file: archiveFile.get().asFile) } }
Bekomme beim nächsten Schritt folgenden Fehler:
$ ./gradlew fatJar openjdk version "17.0.13" 2024-10-15 OpenJDK Runtime Environment (build 17.0.13+11-Debian-2deb12u1) OpenJDK 64-Bit Server VM (build 17.0.13+11-Debian-2deb12u1, mixed mode, sharing) FAILURE: Build failed with an exception. * What went wrong: Could not determine java version from '17.0.13'. * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights. * Get more help at https://help.gradle.org
bzw.:
./gradlew fatJar --stacktrace openjdk version "17.0.13" 2024-10-15 OpenJDK Runtime Environment (build 17.0.13+11-Debian-2deb12u1) OpenJDK 64-Bit Server VM (build 17.0.13+11-Debian-2deb12u1, mixed mode, sharing) FAILURE: Build failed with an exception. * What went wrong: Could not determine java version from '17.0.13'. * Try: Run with --info or --debug option to get more log output. Run with --scan to get full insights. * Exception is: java.lang.IllegalArgumentException: Could not determine java version from '17.0.13'. at org.gradle.api.JavaVersion.toVersion(JavaVersion.java:72) at org.gradle.api.JavaVersion.current(JavaVersion.java:82) at org.gradle.internal.jvm.UnsupportedJavaRuntimeException.assertUsingVersion(UnsupportedJavaRuntimeException.java:42) at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:32) at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:24) at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:33) at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:22) at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:257) at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:191) at org.gradle.launcher.Main.doAction(Main.java:33) at org.gradle.launcher.bootstrap.EntryPoint.run(EntryPoint.java:45) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:569) at org.gradle.launcher.bootstrap.ProcessBootstrap.runNoExit(ProcessBootstrap.java:60) at org.gradle.launcher.bootstrap.ProcessBootstrap.run(ProcessBootstrap.java:37) at org.gradle.launcher.GradleMain.main(GradleMain.java:23) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:569) at org.gradle.wrapper.BootstrapMainStarter.start(BootstrapMainStarter.java:31) at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:108) at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:61) * Get more help at https://help.gradle.org
$ java -version openjdk version "17.0.13" 2024-10-15 OpenJDK Runtime Environment (build 17.0.13+11-Debian-2deb12u1) OpenJDK 64-Bit Server VM (build 17.0.13+11-Debian-2deb12u1, mixed mode, sharing) ``` Eine Idee?
Habe das jetzt mal unter Ubuntu 24.04 versucht, da bekomme ich die gleiche Fehlermeldung wie du.
Dort ist die Gradle Version: 4.4, aktuell ist 8, das könnte auch das Problem sein. Schau mal was deine Version ist?
Am Fri, 15 Nov 2024 03:59:26 -0800 schrieb egabosh @.***>:
Moin,
hab bisher folgendes gemacht:
git clone https://github.com/xaverW/MTPlayer.git apt install gradle openjfx cd MTPlayer gradle init cp ./build-infos/build.gradle ./build.gradle cp ./build-infos/settings.gradle ./settings.gradle cp ./build-infos/gitignore ./.gitignore
Dann die Anpassungen in der build.gradle. Die sieht jetzt so aus:
plugins { id 'application' id "org.openjfx.javafxplugin" version "0.1.0" id "org.beryx.runtime" version "1.13.1" } javafx { version = "20.0.1" modules = ['javafx.controls'] } repositories { mavenCentral() flatDir { dirs 'libs' } } def programName = 'MTPlayer' def jarName = 'MTPlayer.jar' def theMainClass = 'de/p2tools/mtplayer/Main' def fatJarDir = layout.buildDirectory.get().toString() + "/fatJar" + "/" // =========================================== // build project // =========================================== group 'de.p2tools' application { mainClass = theMainClass } dependencies { implementation ':commons-cli-1.6.0' implementation ':commons-io-2.12.0' implementation ':commons-lang3-3.12.0' implementation ':jackson-core-2.15.2' implementation ':jackson-databind-2.15.2' implementation ':jackson-annotations-2.15.2' implementation ':xz-1.9' implementation 'org.jsoup:jsoup:1.17.2' implementation("com.squareup.okhttp3:okhttp:4.12.0") implementation ':p2lib' implementation ':controlsfx-11.1.3' implementation "org.openjfx:javafx-fxml:20:linux-aarch64" implementation "org.openjfx:javafx-controls:20:linux-aarch64" implementation "org.openjfx:javafx-graphics:20:linux-aarch64" implementation "org.openjfx:javafx-base:20:linux-aarch64" } java { toolchain { languageVersion = JavaLanguageVersion.of(17) } } jar { manifest { attributes("Manifest-Version": "1.0", "Main-Class": theMainClass); } duplicatesStrategy = DuplicatesStrategy.EXCLUDE } tasks.register('fatJar', Jar) { duplicatesStrategy = DuplicatesStrategy.EXCLUDE manifest.from jar.manifest from { configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) } } { exclude "META-INF/*.SF" exclude "META-INF/*.DSA" exclude "META-INF/*.RSA" } destinationDirectory.set(file(fatJarDir)) archiveFileName = jarName with jar } runtime { options = ['--strip-debug', '--compress', '2', '--no-header-files', '--no-man-pages'] modules = ['java.naming', 'java.xml'] } tasks.withType(JavaCompile).configureEach { options.encoding = 'UTF-8' } tasks.withType(Zip).configureEach { task -> task.doLast { //ant.checksum file: archiveFile.get().asFile ant.checksum(algorithm: 'SHA-512', file: archiveFile.get().asFile) } }
Bekomme beim nächsten Schritt folgenden Fehler:
$ ./gradlew fatJar openjdk version "17.0.13" 2024-10-15 OpenJDK Runtime Environment (build 17.0.13+11-Debian-2deb12u1) OpenJDK 64-Bit Server VM (build 17.0.13+11-Debian-2deb12u1, mixed mode, sharing) FAILURE: Build failed with an exception. * What went wrong: Could not determine java version from '17.0.13'. * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights. * Get more help at https://help.gradle.org
bzw.:
./gradlew fatJar --stacktrace openjdk version "17.0.13" 2024-10-15 OpenJDK Runtime Environment (build 17.0.13+11-Debian-2deb12u1) OpenJDK 64-Bit Server VM (build 17.0.13+11-Debian-2deb12u1, mixed mode, sharing) FAILURE: Build failed with an exception. * What went wrong: Could not determine java version from '17.0.13'. * Try: Run with --info or --debug option to get more log output. Run with --scan to get full insights. * Exception is: java.lang.IllegalArgumentException: Could not determine java version from '17.0.13'. at org.gradle.api.JavaVersion.toVersion(JavaVersion.java:72) at org.gradle.api.JavaVersion.current(JavaVersion.java:82) at org.gradle.internal.jvm.UnsupportedJavaRuntimeException.assertUsingVersion(UnsupportedJavaRuntimeException.java:42) at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:32) at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:24) at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:33) at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:22) at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:257) at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:191) at org.gradle.launcher.Main.doAction(Main.java:33) at org.gradle.launcher.bootstrap.EntryPoint.run(EntryPoint.java:45) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:569) at org.gradle.launcher.bootstrap.ProcessBootstrap.runNoExit(ProcessBootstrap.java:60) at org.gradle.launcher.bootstrap.ProcessBootstrap.run(ProcessBootstrap.java:37) at org.gradle.launcher.GradleMain.main(GradleMain.java:23) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:569) at org.gradle.wrapper.BootstrapMainStarter.start(BootstrapMainStarter.java:31) at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:108) at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:61) * Get more help at https://help.gradle.org
$ java -version openjdk version "17.0.13" 2024-10-15 OpenJDK Runtime Environment (build 17.0.13+11-Debian-2deb12u1) OpenJDK 64-Bit Server VM (build 17.0.13+11-Debian-2deb12u1, mixed mode, sharing) ``` Eine Idee?
und jetzt nochmal:
habe gradle manuell installiert (und Java auf Java21, JDK!! aktualisiert) und dann gings, das Programm ließ sich bauen:
https://gradle.org/install/#manually
die Gradle-Version in Ubuntu 24.04!! ist hoffnungslos veraltet.
Am Fri, 15 Nov 2024 03:59:26 -0800 schrieb egabosh @.***>:
Moin,
hab bisher folgendes gemacht:
git clone https://github.com/xaverW/MTPlayer.git apt install gradle openjfx cd MTPlayer gradle init cp ./build-infos/build.gradle ./build.gradle cp ./build-infos/settings.gradle ./settings.gradle cp ./build-infos/gitignore ./.gitignore
Dann die Anpassungen in der build.gradle. Die sieht jetzt so aus:
plugins { id 'application' id "org.openjfx.javafxplugin" version "0.1.0" id "org.beryx.runtime" version "1.13.1" } javafx { version = "20.0.1" modules = ['javafx.controls'] } repositories { mavenCentral() flatDir { dirs 'libs' } } def programName = 'MTPlayer' def jarName = 'MTPlayer.jar' def theMainClass = 'de/p2tools/mtplayer/Main' def fatJarDir = layout.buildDirectory.get().toString() + "/fatJar" + "/" // =========================================== // build project // =========================================== group 'de.p2tools' application { mainClass = theMainClass } dependencies { implementation ':commons-cli-1.6.0' implementation ':commons-io-2.12.0' implementation ':commons-lang3-3.12.0' implementation ':jackson-core-2.15.2' implementation ':jackson-databind-2.15.2' implementation ':jackson-annotations-2.15.2' implementation ':xz-1.9' implementation 'org.jsoup:jsoup:1.17.2' implementation("com.squareup.okhttp3:okhttp:4.12.0") implementation ':p2lib' implementation ':controlsfx-11.1.3' implementation "org.openjfx:javafx-fxml:20:linux-aarch64" implementation "org.openjfx:javafx-controls:20:linux-aarch64" implementation "org.openjfx:javafx-graphics:20:linux-aarch64" implementation "org.openjfx:javafx-base:20:linux-aarch64" } java { toolchain { languageVersion = JavaLanguageVersion.of(17) } } jar { manifest { attributes("Manifest-Version": "1.0", "Main-Class": theMainClass); } duplicatesStrategy = DuplicatesStrategy.EXCLUDE } tasks.register('fatJar', Jar) { duplicatesStrategy = DuplicatesStrategy.EXCLUDE manifest.from jar.manifest from { configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) } } { exclude "META-INF/*.SF" exclude "META-INF/*.DSA" exclude "META-INF/*.RSA" } destinationDirectory.set(file(fatJarDir)) archiveFileName = jarName with jar } runtime { options = ['--strip-debug', '--compress', '2', '--no-header-files', '--no-man-pages'] modules = ['java.naming', 'java.xml'] } tasks.withType(JavaCompile).configureEach { options.encoding = 'UTF-8' } tasks.withType(Zip).configureEach { task -> task.doLast { //ant.checksum file: archiveFile.get().asFile ant.checksum(algorithm: 'SHA-512', file: archiveFile.get().asFile) } }
Bekomme beim nächsten Schritt folgenden Fehler:
$ ./gradlew fatJar openjdk version "17.0.13" 2024-10-15 OpenJDK Runtime Environment (build 17.0.13+11-Debian-2deb12u1) OpenJDK 64-Bit Server VM (build 17.0.13+11-Debian-2deb12u1, mixed mode, sharing) FAILURE: Build failed with an exception. * What went wrong: Could not determine java version from '17.0.13'. * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights. * Get more help at https://help.gradle.org
bzw.:
./gradlew fatJar --stacktrace openjdk version "17.0.13" 2024-10-15 OpenJDK Runtime Environment (build 17.0.13+11-Debian-2deb12u1) OpenJDK 64-Bit Server VM (build 17.0.13+11-Debian-2deb12u1, mixed mode, sharing) FAILURE: Build failed with an exception. * What went wrong: Could not determine java version from '17.0.13'. * Try: Run with --info or --debug option to get more log output. Run with --scan to get full insights. * Exception is: java.lang.IllegalArgumentException: Could not determine java version from '17.0.13'. at org.gradle.api.JavaVersion.toVersion(JavaVersion.java:72) at org.gradle.api.JavaVersion.current(JavaVersion.java:82) at org.gradle.internal.jvm.UnsupportedJavaRuntimeException.assertUsingVersion(UnsupportedJavaRuntimeException.java:42) at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:32) at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:24) at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:33) at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:22) at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:257) at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:191) at org.gradle.launcher.Main.doAction(Main.java:33) at org.gradle.launcher.bootstrap.EntryPoint.run(EntryPoint.java:45) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:569) at org.gradle.launcher.bootstrap.ProcessBootstrap.runNoExit(ProcessBootstrap.java:60) at org.gradle.launcher.bootstrap.ProcessBootstrap.run(ProcessBootstrap.java:37) at org.gradle.launcher.GradleMain.main(GradleMain.java:23) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:569) at org.gradle.wrapper.BootstrapMainStarter.start(BootstrapMainStarter.java:31) at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:108) at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:61) * Get more help at https://help.gradle.org
$ java -version openjdk version "17.0.13" 2024-10-15 OpenJDK Runtime Environment (build 17.0.13+11-Debian-2deb12u1) OpenJDK 64-Bit Server VM (build 17.0.13+11-Debian-2deb12u1, mixed mode, sharing) ``` Eine Idee?
Moin und vielen Dank ich konnte das nun mit Debian 12 (bookworm) auf nem Raspi 5 bauen und laufen lassen. Hier meine Notizen:
# openjfx
apt install openjfx
# gradle (newer then in debian repo)
wget https://services.gradle.org/distributions/gradle-8.11-bin.zip
mkdir /opt/gradle
unzip -d /opt/gradle gradle-8.11-bin.zip
git clone https://github.com/xaverW/MTPlayer.git
cd MTPlayer
export PATH=$PATH:/opt/gradle/gradle-8.11/bin
gradle init
=================
Found existing files in the project directory: '/home/mirko/mtplayer-build/MTPlayer'.
Directory will be modified and existing files may be overwritten. Continue? (default: no) [yes, no] yes
Select type of build to generate:
1: Application
2: Library
3: Gradle plugin
4: Basic (build structure only)
Enter selection (default: Application) [1..4] 4
Project name (default: MTPlayer):
Select build script DSL:
1: Kotlin
2: Groovy
Enter selection (default: Kotlin) [1..2] 2
Generate build using new APIs and behavior (some features may change in the next minor release)? (default: no) [yes, no]
> Task :init
Learn more about Gradle by exploring our Samples at https://docs.gradle.org/8.11/samples
BUILD SUCCESSFUL in 28s
1 actionable task: 1 executed
==========
cp ./build-infos/build.gradle ./build.gradle
cp ./build-infos/settings.gradle ./settings.gradle
cp ./build-infos/gitignore ./.gitignore
# vim build.gradle
===
javafx {
version = "20.0.1"
===
./gradlew fatJar
./gradlew run
Wäre es nun nicht auch möglich eine fertige jar zum Download für die "Endnutzer" bereitzustellen?
Hi,
gratuliere.
Ich werde da keine eigene Version für den Raspi anbieten. Allein dass er sich übersetzen lässt, ist es nicht getan. Es braucht immer mal wieder Anpassungen im Programm für verschiedene Sachen. Windows braucht immer mal wieder was. Aktuell bin ich dran, für GNOME was zu machen, da werden Dialoge nicht in der richtigen Größe angezeigt. Und das müsste ich dann fortlaufen auch für den Raspi machen. Außerdem müsste er immer getrennt gebaut werden.
Sei mir nicht böse, aber mein Tag hat auch nur 24h und kaufen müsste ich mir ihn dann sowieso erst mal. Mal eine einmalige Sache zu Testen/Auszuprobieren: Immer gerne aber dann eine fortlaufende zusätzliche Arbeit, das geht nicht.
Viele Grüße Xaver
Am Mon, 18 Nov 2024 05:49:10 -0800 schrieb egabosh @.***>:
Moin und vielen Dank ich konnte das nun mit Debian 12 (bookworm) auf nem Raspi 5 bauen und laufen lassen. Hier meine Notizen:
# openjfx apt install openjfx # gradle (newer then in debian repo) wget https://services.gradle.org/distributions/gradle-8.11-bin.zip mkdir /opt/gradle unzip -d /opt/gradle gradle-8.11-bin.zip git clone https://github.com/xaverW/MTPlayer.git cd MTPlayer export PATH=$PATH:/opt/gradle/gradle-8.11/bin gradle init ================= Found existing files in the project directory: '/home/mirko/mtplayer-build/MTPlayer'. Directory will be modified and existing files may be overwritten. Continue? (default: no) [yes, no] yes Select type of build to generate: 1: Application 2: Library 3: Gradle plugin 4: Basic (build structure only) Enter selection (default: Application) [1..4] 4 Project name (default: MTPlayer): Select build script DSL: 1: Kotlin 2: Groovy Enter selection (default: Kotlin) [1..2] 2 Generate build using new APIs and behavior (some features may change in the next minor release)? (default: no) [yes, no] > Task :init Learn more about Gradle by exploring our Samples at https://docs.gradle.org/8.11/samples BUILD SUCCESSFUL in 28s 1 actionable task: 1 executed ========== cp ./build-infos/build.gradle ./build.gradle cp ./build-infos/settings.gradle ./settings.gradle cp ./build-infos/gitignore ./.gitignore # vim build.gradle === javafx { version = "20.0.1" === ./gradlew fatJar ./gradlew run
Wäre es nun nicht auch möglich eine fertige jar zum Download für die "Endnutzer" bereitzustellen?
Danke! :-)
Soweit wir das bisher beurteilen können läuft der MTPlayer problemlos und tut was er soll nach diesem Build.
Schade, aber die Gründe sind natürlich verständlich.
Vielleicht wäre es möglich eine Art automatisiertes Building aufzusetzen, damit die Arbeit sich möglichst gering hält? Wir könnten anbieten dir einen Pi dafür zu schicken, so dass du den nicht selbst kaufen müsstest und ich könnte ggf. auch manuelle Arbeiten falls nötig übernehmen oder Dinge skripten. Falls es dennoch zu viel Aufwand bedeutet ist eine Ablehnung natürlich ebenfalls verständlich.
Ich werde mirs mal durch den Kopf gehen lassen. Was auf jeden Fall geht, ist eine eigene Seite auf der Website mit einer Anleitung zum Bauen und passenden Scripten.
Habe meinen Update-Mechanismuss mal mit einen Raspi-File getestet, der würde das schlucken und zum Download anzeigen. Das bräuchte schon mal keine Änderungen :)
Gib mir aber etwas Zeit.
Moin,
looks like MTPlayer doesn't work on aarch64. Tried with Raspberry Pi 5:
Am I right and is there a support planned?
thx olli