blob: 365278fb396e21e2d7c844dabfcbc539ad61debe (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
#!/bin/sh
# Since version 4.1.1 onawards FFDec requires Java 8+
ffdec_error_exit() {
echo "--------------------------------------------------------"
echo "$1"
echo "--------------------------------------------------------"
echo "FFDec requires a full JRE to run the graphical interface."
echo ""
echo "Please manually configure your Java environment:"
echo "1. Install the full JRE: sudo pacman -S jre-openjdk"
echo "2. Switch environment: sudo archlinux-java set <full-jre-name>"
echo "--------------------------------------------------------"
exit 1
}
INSTALLED_JAVAS=$(archlinux-java status | grep -v "Available Java" | awk '{print $1}')
FULL_JRE=""
TARGET_JAVA="java"
find_jre() {
for jvm in $INSTALLED_JAVAS; do
LIB_PATH="/usr/lib/jvm/$jvm/lib/libawt_xawt.so"
if [[ -f "$LIB_PATH" ]]; then
FULL_JRE="$jvm"
break
fi
done
[[ -n "$FULL_JRE" ]] && TARGET_JAVA="/usr/lib/jvm/$FULL_JRE/bin/java" || ffdec_error_exit
}
[[ -f $(readlink -f $(which java) | sed 's|bin/java|lib/libawt_xawt.so|') ]] || [[ -n "$(command -v archlinux-java)" ]] && find_jre
DEFAULT_JVM_OPTS='-Xms128M -XX:MaxRAMPercentage=70.0 -XX:+UseG1GC -Dawt.useSystemAAFontSettings=on -Dswing.aatext=true'
exec $TARGET_JAVA $DEFAULT_JVM_OPTS -Djava.net.preferIPv4Stack=true -cp '/usr/share/java/ffdec/lib' -jar '/usr/share/java/ffdec/ffdec.jar' "$@"
|