dotfiles/symlinks/bin/jdtls-start.sh

38 lines
941 B
Bash
Executable File

#!/usr/bin/env bash
JAR="$HOME/lsp/java/jdtls/plugins/org.eclipse.equinox.launcher_*.jar"
UNAME=$(sh -c 'uname 2>/dev/null || echo Unknown')
CONFIGURATION="$HOME/lsp/java/jdtls/config_"
if [[ "$UNAME" == "Windows_NT" ]]; then
UNAME="Windows"
fi
case $UNAME in
Linux)
CONFIGURATION="${CONFIGURATION}linux"
;;
Windows)
CONFIGURATION="${CONFIGURATION}win"
;;
Darwin)
CONFIGURATION="${CONFIGURATION}mac"
;;
esac
java \
-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=1044 \
-Declipse.application=org.eclipse.jdt.ls.core.id1 \
-Dosgi.bundles.defaultStartLevel=4 \
-Declipse.product=org.eclipse.jdt.ls.core.product \
-Dlog.protocol=true \
-Dlog.level=ALL \
-Xms1g \
-Xmx2G \
-jar $(echo "$JAR") \
-configuration $(echo "$CONFIGURATION") \
-data "$1" \
--add-modules=ALL-SYSTEM \
--add-opens java.base/java.util=ALL-UNNAMED \
--add-opens java.base/java.lang=ALL-UNNAMED