|
Replies:
14
-
Pages:
1
-
Last Post:
28 Oct 20, 13:26
Last Post By: davidekholm
|
Threads:
[
Previous
|
Next
]
|
|
Posts:
12
Registered:
15-Feb-2013
|
|
|
Jalbum does not start on Manjaro Linux
Posted:
11 Jan 20, 12:20
|
|
|
Hi,
after some month i startet Jalbum which informed me about an update. I used the latest zip File, but it does not start any longer. Going back to an older version did not help. It might be that my Java installation is faulty, but i don't know what to do now.
System is Manjaro Linux, java is Open JDK 13.0.
[hph@hackbrett4 ~]$ java --version
openjdk 13.0.1 2019-10-15
OpenJDK Runtime Environment (build 13.0.1+9)
OpenJDK 64-Bit Server VM (build 13.0.1+9, mixed mode)
[hph@hackbrett4 ~]$ java -jar ~/Programme/jAlbum/JAlbum.jar
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by se.datadosen.jalbum.Config (file:/home/hph/Programme/jAlbum/lib/jalbum-core.jar) to method sun.swing.SwingUtilities2.checkAccess(int)
WARNING: Please consider reporting this to the maintainers of se.datadosen.jalbum.Config
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
java.lang.NoClassDefFoundError: javafx/beans/binding/BooleanExpression
at se.datadosen.jalbum.SplashScreen.<init>(SplashScreen.java:39)
at se.datadosen.jalbum.JAlbum.<init>(JAlbum.java:111)
at se.datadosen.jalbum.JAlbum.main(JAlbum.java:369)
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:567)
at se.datadosen.jalbum.Main.main(Main.java:45)
Caused by: java.lang.ClassNotFoundException: javafx.beans.binding.BooleanExpression
at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:436)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:588)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
... 8 more
Following the threads https://jalbum.net/forum/thread.jspa?messageID=317109񍚵 and https://jalbum.net/forum/thread.jspa?messageID=310128񋭰 and others did not help.
JavaFX is installed, starting with full path says:
[hph@hackbrett4 ~]$ /usr/bin/java --module-path /usr/lib/jvm/java-13-openjdk/lib/ --add-modules=javafx.graphics,javafx.swing,javafx.web -jar /home/hph/Programme/jAlbum/JAlbum.jar
Error occurred during initialization of boot layer
java.lang.LayerInstantiationException: Package jdk.internal.jimage.decompressor in both module java.base and module jrt.fs
Any hints?
Above output is from JAlbum 18.4, but the newest version brings the same messages.
HP
|
|
|
Posts:
2
Registered:
9-Jan-2008
|
|
|
Re: Jalbum does not start on Manjaro Linux
Posted:
14 Jan 20, 14:52
in response to: hp-bilder
|
|
|
This is also true for Arch Linux, so I hopefully join this thread.
[XXXXXX@Cirrus7 jAlbum]$ ./startjalbum.sh
.
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by se.datadosen.jalbum.Config (file:/home/XXXXXX/jAlbum/./lib/jalbum-core.jar) to method sun.swing.SwingUtilities2.checkAccess(int)
WARNING: Please consider reporting this to the maintainers of se.datadosen.jalbum.Config
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
java.lang.NoClassDefFoundError: javafx/beans/binding/BooleanExpression
at se.datadosen.jalbum.SplashScreen.<init>(SplashScreen.java:39)
at se.datadosen.jalbum.JAlbum.<init>(JAlbum.java:111)
at se.datadosen.jalbum.JAlbum.main(JAlbum.java:370)
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:567)
at se.datadosen.jalbum.Main.main(Main.java:45)
Caused by: java.lang.ClassNotFoundException: javafx.beans.binding.BooleanExpression
at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:436)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:588)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
... 8 more
In my installation there is:
extra/jre-openjdk 13.0.1.u9-1
extra/jre-openjdk-headless 13.0.1.u9-1
extra/java-openjfx 13.u14-1
... so it should work. Going to java-8-openjdk makes jAlbum start, but afterwards I get problems with skins that need newer Java versions.
So I hope we can nail the problem here ...
Besides: It's version 19.2 of jAlbum.
Best regards
Stephan
Edited by: waldbaer59 on 14-Jan-2020 14:53
|
|
|
Posts:
3,442
Registered:
18-Oct-2002
|
|
|
Re: Jalbum does not start on Manjaro Linux
Posted:
14 Jan 20, 16:27
in response to: hp-bilder
|
|
|
Hi hp-bilder, your --module-path should point to the "lib" folder of the JavaFX SDK and not the main Java's lib folder. On my Mac I use --module-path=/Library/Java/javafx-sdk-13/lib. You can get the JavaFX SDK from https://gluonhq.com/products/javafx/
(Go for the SDK, not the JMODS format for your platform. The JMODS format is for linking your own runtime.
|
|
|
Posts:
3,442
Registered:
18-Oct-2002
|
|
|
Re: Jalbum does not start on Manjaro Linux
Posted:
14 Jan 20, 16:39
in response to: waldbaer59
|
|
|
This is also true for Arch Linux, so I hopefully join this thread.
Your problem is different. The startjAlbum-sh file of the zip archive will only work if you either use a Java that is pre-linked with JavaFX (our bundled ones are) or manually refer to the "lib" folder of the OpenJFX SDK via a --module-path parameter. You also need to use the --add-modules and specify the 3 JavaFX modules that jAlbum relies on. For a complete example from my Mac, see here: /Library/Java/JavaVirtualMachines/jdk-13.0.1.jdk/Contents/Home/bin/java --module-path=/Library/Java/javafx-sdk-13/lib --add-modules javafx.graphics,javafx.swing,javafx.web -Xmx2000M -jar ~/Projects/JAlbum/JAlbum.jar
I'm sorry it has become so complicated, but Oracle decided to make the JavaFX module, which was part of Java, an external module. For the non zip releases we bundle a pre-linked Java. With that one, there is no need to fiddle with --add-modules and --module-path.
If you like to roll your own pre-linked Java to run jAlbum on, you can use the jlink command. Here's how we pre-link the Linux Java using jlink: #/bin/bash
VER=13.0.1
JDKPATH=jdk-${VER}
JREPATH=jre-${VER}-mini
rm -rf ${JREPATH}
${JDKPATH}/bin/jlink -J-Xmx4g --strip-debug --module-path ${JDKPATH}/jmods:javafx-jmods-${VER} --add-modules java.base,java.compiler,java.datatransfer,java.desktop,java.logging,java.prefs,java.scripting,java.xml,javafx.base,javafx.controls,javafx.fxml,javafx.graphics,javafx.media,javafx.swing,javafx.web,jdk.dynalink,jdk.internal.le,jdk.jsobject,jdk.scripting.nashorn.shell,jdk.scripting.nashorn,jdk.xml.dom,jdk.unsupported.desktop,jdk.charsets,jdk.localedata,jdk.crypto.cryptoki,jdk.crypto.ec,java.management --output ${JREPATH}
|
|
|
Posts:
2
Registered:
9-Jan-2008
|
|
|
Re: Jalbum does not start on Manjaro Linux
Posted:
14 Jan 20, 18:32
in response to: hp-bilder
|
|
|
Thank You very much! Now it is up and running.
It was not completely easy though, as there was one further problem. jAlbum first didn't want to start due to a collision with jrt-fs.jar which was within the openjfx-module-directory.
So I copied all necessary openjfx module files into the (from me created) 'modules' subdirectory in the jAlbum-programm directory and adapted the starting command.
I know: it's the 'I'm hammering it into the computer' method, but it works for now. I'll have to keep an eye on it. Maybe I'll get it done in a better way.
For now I'm happy.
Best regards
Stephan
Edited by: waldbaer59 on 14-Jan-2020 20:51
|
|
|
Posts:
12
Registered:
15-Feb-2013
|
|
|
Posts:
3,442
Registered:
18-Oct-2002
|
|
|
Re: Jalbum does not start on Manjaro Linux
Posted:
16 Jan 20, 18:14
in response to: hp-bilder
|
|
|
BTW: any chance to get an appimage for Linux?
Interesting... I'll look into that!
|
|
|
Posts:
12
Registered:
15-Feb-2013
|
|
|
Re: Jalbum does not start on Manjaro Linux
Posted:
17 Jan 20, 20:52
in response to: davidekholm
|
|
|
Following an advice from the Manjaro forum, i downloaded Liberica Java ( https://bell-sw.com/pages/java-13.0.1/, renamed ib/jrt-fs.jar and jAlbum starts again. A short test, modifying an existing album, build an upload, worked fine. So for now i can work again.
There however some error messages on the command line:
[hph@hackbrett4 Programme]$ jdk-13.0.1/bin/java --module-path jdk-13.0.1/lib/ --add-modules=javafx.graphics,javafx.swing,javafx.web -jar jAlbum/JAlbum.jar
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by se.datadosen.jalbum.Config (file:/home/hph/Programme/jAlbum/lib/jalbum-core.jar) to method sun.swing.SwingUtilities2.checkAccess(int)
WARNING: Please consider reporting this to the maintainers of se.datadosen.jalbum.Config
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
HP
|
|
|
Posts:
8,182
Registered:
31-Jan-2006
|
|
|
Re: Jalbum does not start on Manjaro Linux
Posted:
17 Jan 20, 21:23
in response to: hp-bilder
|
|
|
That's not an error. Those are just warnings about a future direction of Java development.
|
|
|
Posts:
3,442
Registered:
18-Oct-2002
|
|
|
Re: Jalbum does not start on Manjaro Linux
Posted:
21 Jan 20, 18:04
in response to: JeffTucker
|
|
|
... and hard to fix until the Darcula Look & Feel we're using gets updated to comply with Java 13
|
|
|
Posts:
124
Registered:
5-Dec-2013
|
|
|
Re: Jalbum does not start on Manjaro Linux
Posted:
23 Jan 20, 08:11
in response to: hp-bilder
|
|
|
Never considered using an appimage. Both the bundled and packaged as well as the zipped versions run without further ado on all Linux versions I am currently testing on my machines:
erlangen:~ # os-prober
/dev/nvme0n1p1:Fedora 31 (Workstation Edition):Fedora:linux
/dev/nvme0n1p2:openSUSE Tumbleweed:openSUSE:linux
/dev/sda1:Manjaro Linux (18.1.3):ManjaroLinux:linux
/dev/sda2:openSUSE Leap 15.1:openSUSE:linux
/dev/sdb2:Arch Linux:Arch:linux
/dev/sdb3:SUSE Linux Enterprise Desktop 12 SP3:SLED:linux
/dev/sdb6:Ubuntu 19.10 (19.10):Ubuntu:linux
erlangen:~ #
Users may consider to modify their program starters: https://jalbum.net/help/en/Manuals/Users:kmistelberger/Installation#Invocation
The zipped version requires installation of JavaFX: https://gluonhq.com/products/javafx/
|
|
|
Posts:
12
Registered:
15-Feb-2013
|
|
|
Re: Jalbum does not start on Manjaro Linux
Posted:
23 Jan 20, 21:23
in response to: karlmistelberger
|
|
|
Thanks for replying,
but as said in a previous mail, i was out of luck with Manjaro java. But using Liberica Java, it runs. I don't blame the jalbum developers, it might be my fault. And yes, i tried your starter tipp and in fact use it for the new java installation.
Appimage would have the advantage that the developers can provide a well tested version which runs on any recent Linux, no need to provide rpm or deb versions and thus, effort is less. Download size however is larger.
HP
|
|
|
Posts:
124
Registered:
5-Dec-2013
|
|
|
Re: Jalbum does not start on Manjaro Linux
Posted:
24 Jan 20, 07:48
in response to: hp-bilder
|
|
|
i was out of luck with Manjaro java. But using Liberica Java, it runs.
Liberica is reliable stuff. The folks at Bellsoft are offering great services: https://bell-sw.com/pages/services/
An alternative solution is using pacman to install package java-openjfx.
Appimage would have the advantage that the developers can provide a well tested version which runs on any recent Linux
Appimages do run on pretty every recent distribution. However contrary to popular belief they are not well tested. They are a crude trick to skip system integration and they are harmful to maintenance.
Download size however is larger.
Download size is only the tip of the iceberg. Running several appimages at the same time will cause disk cache trashing.
Appimages should be considered as a perfect temporary workaround for packaging problems.
|
|
|
Posts:
8
Registered:
22-Oct-2020
|
|
|
Re: Jalbum does not start on Manjaro Linux
Posted:
22 Oct 20, 23:17
in response to: hp-bilder
|
|
|
Hi,
with the zip version from jAlbum v22.1 I get following error message:
rathjen@pcnuc jAlbum]$ ./startjalbum.sh
.
java.lang.NoClassDefFoundError: javafx/beans/binding/BooleanExpression
at se.datadosen.jalbum.SplashScreen.<init>(SplashScreen.java:39)
at se.datadosen.jalbum.JAlbum.<init>(JAlbum.java:115)
at se.datadosen.jalbum.JAlbum.main(JAlbum.java:375)
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:564)
at se.datadosen.jalbum.Main.main(Main.java:45)
Caused by: java.lang.ClassNotFoundException: javafx.beans.binding.BooleanExpression
at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:435)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:589)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
... 8 more
I use Manjaro version 20.2 with the following Java packages:
a) local/jre-openjdk 14.0.2.u12-1
b) local/jre-openjdk-headless 14.0.2.u12-1
c) local/java-openjfx 14.0.2.u0-2
I could find jAlbum in the AUR repository in version 16.2 (e.g. https://aur.archlinux.org/packages/jalbum/).
Best regards
Gerald
Edited by: gerathjen on 22-Oct-2020 23:17
Edited by: gerathjen on 22-Oct-2020 23:20
|
|
|
Posts:
3,442
Registered:
18-Oct-2002
|
|
|
Re: Jalbum does not start on Manjaro Linux
Posted:
28 Oct 20, 13:26
in response to: gerathjen
|
|
|
This error occurs if JavaFX is missing from Java. If you want to run the zip version, then you must bake support for JavaFX into your existing Java prior to running jAlbum on it. It's a bit complicated, that's why we've done it for you with the .deb and .rpm archives. Can't you use any of these archives?
|
|
|
|
Legend
|
|
Forum admins
|
|
Helpful Answer
|
|
Correct Answer
|
|