tonny-kohar / alkitab-suite

Alkitab Bible Study is an open source and free desktop Bible study software.
https://www.kiyut.com/products/alkitab/index.php
Other
27 stars 2 forks source link

Fails to launch on Big Sur #5

Open CheckeredFlag opened 3 years ago

CheckeredFlag commented 3 years ago

On latest MacOS Big Sur (11.2.1), Alkitab fails to launch. Adding a set -x switch shows this:

++ exec sh ./../platform/lib/nbexec --jdkhome '' -J-Xdock:name=alkitab -J-Xdock:icon=./../../alkitab.icns --clusters '/Applications/Alkitab Bible Study.app/Contents/Resources/alkitab/alkitab:' --userdir '/Users/mmoreno/Library/Application Support/alkitab/5.0.1' --branding alkitab
The operation couldn’t be completed. Unable to locate a Java Runtime that supports (null).
Please visit http://www.java.com for information on installing Java.

Cannot find java. Please use the --jdkhome switch.

I resolved it by adding jdkhome=$(/usr/libexec/java_home) near the top of /Applications/Alkitab Bible Study.app/Contents/Resources/alkitab/bin/alkitab.

No idea why it worked in Catalina but stopped in Big Sur.

CheckeredFlag commented 2 years ago

Tonny, I can no longer get Alkitab to work at all on MacOS Big Sur 11.6.2. I added set -x to the launcher script and also set jdkhome and when I launch, the alkitab loading window displays, followed by an empty gray main window.

Here is the output of the script:

$ cd /Applications/Alkitab Bible Study.app/Contents/MacOS
$ ./alkitab

+ '[' -z '' -a -x /usr/libexec/java_home ']'
++ /usr/libexec/java_home
+ export JAVA_HOME=/usr/local/Cellar/openjdk/17.0.1_1/libexec/openjdk.jdk/Contents/Home
+ JAVA_HOME=/usr/local/Cellar/openjdk/17.0.1_1/libexec/openjdk.jdk/Contents/Home
++ resolve_symlink ./alkitab
++ file=./alkitab
++ '[' -h ./alkitab ']'
++ echo ./alkitab
+ PRG=./alkitab
++ dirname ./alkitab
+ parentDir=.
++ absolutize_path .
+++ pwd
++ oldpwd='/Applications/Alkitab Bible Study.app/Contents/MacOS'
++ cd .
+++ pwd
++ abspath='/Applications/Alkitab Bible Study.app/Contents/MacOS'
++ cd '/Applications/Alkitab Bible Study.app/Contents/MacOS'
++ echo '/Applications/Alkitab Bible Study.app/Contents/MacOS'
+ parentDir='/Applications/Alkitab Bible Study.app/Contents/MacOS'
+ scriptPath='/Applications/Alkitab Bible Study.app/Contents/MacOS/../Resources/alkitab/bin'
+ sh -- '/Applications/Alkitab Bible Study.app/Contents/MacOS/../Resources/alkitab/bin/alkitab'
+ PRG='/Applications/Alkitab Bible Study.app/Contents/MacOS/../Resources/alkitab/bin/alkitab'
+ '[' -h '/Applications/Alkitab Bible Study.app/Contents/MacOS/../Resources/alkitab/bin/alkitab' ']'
++ dirname '/Applications/Alkitab Bible Study.app/Contents/MacOS/../Resources/alkitab/bin/alkitab'
+ progdir='/Applications/Alkitab Bible Study.app/Contents/MacOS/../Resources/alkitab/bin'
++ basename '/Applications/Alkitab Bible Study.app/Contents/MacOS/../Resources/alkitab/bin/alkitab'
+ APPNAME=alkitab
++ /usr/libexec/java_home
+ jdkhome=/usr/local/Cellar/openjdk/17.0.1_1/libexec/openjdk.jdk/Contents/Home
+ case "`uname`" in
++ uname
+ DEFAULT_USERDIR_ROOT='/Users/mmoreno/Library/Application Support/alkitab'
+ DEFAULT_CACHEDIR_ROOT=/Users/mmoreno/Library/Caches/alkitab
+ '[' -f '/Applications/Alkitab Bible Study.app/Contents/MacOS/../Resources/alkitab/bin/../etc/alkitab.conf' ']'
+ . '/Applications/Alkitab Bible Study.app/Contents/MacOS/../Resources/alkitab/bin/../etc/alkitab.conf'
++ default_userdir='/Users/mmoreno/Library/Application Support/alkitab/5.0.1'
++ default_cachedir=/Users/mmoreno/Library/Caches/alkitab/5.0.1
++ default_options='--branding alkitab'
+ args=
+ case "`uname`" in
++ uname
+ '[' '!' -z '' ']'
+ userdir='/Users/mmoreno/Library/Application Support/alkitab/5.0.1'
+ '[' 0 -gt 0 ']'
+ '[' -f '/Users/mmoreno/Library/Application Support/alkitab/5.0.1/etc/alkitab.conf' ']'
+ '[' -n /usr/local/Cellar/openjdk/17.0.1_1/libexec/openjdk.jdk/Contents/Home -a '!' -d /usr/local/Cellar/openjdk/17.0.1_1/libexec/openjdk.jdk/Contents/Home -a -d '/Applications/Alkitab Bible Study.app/Contents/MacOS/../Resources/alkitab/bin/..//usr/local/Cellar/openjdk/17.0.1_1/libexec/openjdk.jdk/Contents/Home' ']'
++ cat '/Applications/Alkitab Bible Study.app/Contents/MacOS/../Resources/alkitab/bin/../etc/alkitab.clusters'
++ readClusters
++ '[' -x /usr/ucb/echo ']'
++ echo=echo
++ read X
++ absolutize_paths
++ read path
++ tr '\012' :
++ '[' alkitab '!=' '' ']'
++ echo '/Applications/Alkitab Bible Study.app/Contents/MacOS/../Resources/alkitab/bin/../alkitab'
++ read X
++ '[' '' '!=' '' ']'
++ read X
++ '[' '' '!=' '' ']'
++ read X
++ echo
++ '[' '' '!=' '' ']'
++ '[' -d '/Applications/Alkitab Bible Study.app/Contents/MacOS/../Resources/alkitab/bin/../alkitab' ']'
++ read X
++ cd '/Applications/Alkitab Bible Study.app/Contents/MacOS/../Resources/alkitab/bin/../alkitab'
++ pwd
++ read path
+ clusters='/Applications/Alkitab Bible Study.app/Contents/Resources/alkitab/alkitab:'
+ '[' '!' -z '' ']'
++ echo '/Applications/Alkitab Bible Study.app/Contents/MacOS/../Resources/alkitab/bin/../platform/lib/nbexec'
+ nbexec='/Applications/Alkitab Bible Study.app/Contents/MacOS/../Resources/alkitab/bin/../platform/lib/nbexec'
+ case "`uname`" in
++ uname
+ eval exec sh '"$nbexec"' --jdkhome '"$jdkhome"' '-J-Xdock:name="$APPNAME"' '"-J-Xdock:icon=$progdir/../../$APPNAME.icns"' --clusters '"$clusters"' --userdir '"${userdir}"' --branding alkitab ''
++ exec sh '/Applications/Alkitab Bible Study.app/Contents/MacOS/../Resources/alkitab/bin/../platform/lib/nbexec' --jdkhome /usr/local/Cellar/openjdk/17.0.1_1/libexec/openjdk.jdk/Contents/Home -J-Xdock:name=alkitab '-J-Xdock:icon=/Applications/Alkitab Bible Study.app/Contents/MacOS/../Resources/alkitab/bin/../../alkitab.icns' --clusters '/Applications/Alkitab Bible Study.app/Contents/Resources/alkitab/alkitab:' --userdir '/Users/mmoreno/Library/Application Support/alkitab/5.0.1' --branding alkitab
Dec 26, 2021 11:28:54 AM org.netbeans.ProxyURLStreamHandlerFactory register
SEVERE: No way to find original stream handler for jar protocol
java.lang.reflect.InaccessibleObjectException: Unable to make field transient java.net.URLStreamHandler java.net.URL.handler accessible: module java.base does not "opens java.net" to unnamed module @30cb5b99
    at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354)
    at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297)
    at java.base/java.lang.reflect.Field.checkCanSetAccessible(Field.java:178)
    at java.base/java.lang.reflect.Field.setAccessible(Field.java:172)
    at org.netbeans.ProxyURLStreamHandlerFactory.register(ProxyURLStreamHandlerFactory.java:59)
    at org.netbeans.JarClassLoader.<clinit>(JarClassLoader.java:117)
    at org.netbeans.MainImpl.execute(MainImpl.java:153)
    at org.netbeans.MainImpl.main(MainImpl.java:60)
    at org.netbeans.Main.main(Main.java:58)

WARNING: A terminally deprecated method in java.lang.System has been called
WARNING: System::setSecurityManager has been called by org.netbeans.TopSecurityManager (file:/Applications/Alkitab%20Bible%20Study.app/Contents/Resources/alkitab/platform/lib/boot.jar)
WARNING: Please consider reporting this to the maintainers of org.netbeans.TopSecurityManager
WARNING: System::setSecurityManager will be removed in a future release