
export JAVA_OPTS="-Xms3072m -Xmx3072m"
#export JAVA_OPTS="-XX:PermSize=640m -XX:MaxPermSize=640m" # for JDK < 8
export JAVA_OPTS="-XX:MetaspaceSize=640m -XX:MaxMetaspaceSize=640m" # for JDK >= 8
#export JAVA_OPTS="${JAVA_OPTS} -XX:+UseParallelGC -XX:ParallelGCThreads=4 -XX:+UseParallelOldGC" # for JDK < 17
export JAVA_OPTS="${JAVA_OPTS} -XX:+UseZGC -XX:+ZGenerational" # for JDK >= 17
export JAVA_OPTS="${JAVA_OPTS} -XX:MaxGCPauseMillis=100 -XX:+UseAdaptiveSizePolicy"
export JAVA_OPTS="${JAVA_OPTS} -Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8"
# Solve: Metaspace OOM after redeploying a web application in Tomcat multiple times.
#export JAVA_OPTS="${JAVA_OPTS} -XX:SoftRefLRUPolicyMSPerMB=10"
# Fix: Could not initialize class sun.awt.X11.XToolkit
export JAVA_OPTS="${JAVA_OPTS} -Djava.awt.headless=true"

#export JAVA_OPTS="${JAVA_OPTS} -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9005 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false"

export CATALINA_HOME="${HOME}/apache-tomcat-current"
export CATALINA_PID="${HOME}/tmp/catalina.pid"
