GP-0: Force Java to run in headless mode when Ghidra is launched from

analyzeHeadless script
This commit is contained in:
Ryan Kurtz 2022-03-08 11:47:59 -05:00
parent f9a46d6752
commit 824723e492
3 changed files with 11 additions and 3 deletions

View file

@ -41,7 +41,9 @@ public class Ghidra {
// fully qualified class name (with . replaced by -). If we don't do this here, the next
// time it gets done is in a new thread, which results in the application name being set to
// "java-lang-thread".
Taskbar.isTaskbarSupported();
if (!Boolean.getBoolean("java.awt.headless")) {
Taskbar.isTaskbarSupported();
}
// Forward args to GhidraLauncher, which will perform the launch
GhidraLauncher.launch(args);

View file

@ -15,10 +15,13 @@ LAUNCH_MODE=fg
# NOTE: This variable is ignored if not launching in a debugging mode.
DEBUG_ADDRESS=127.0.0.1:13002
# Run Java in headless mode
VMARG_LIST="-Djava.awt.headless=true "
# Limit the # of garbage collection and JIT compiler threads in case many headless
# instances are run in parallel. By default, Java will assign one thread per core
# which does not scale well on servers with many cores.
VMARG_LIST="-XX:ParallelGCThreads=2 "
VMARG_LIST+="-XX:ParallelGCThreads=2 "
VMARG_LIST+="-XX:CICompilerCount=2 "
# Resolve symbolic link if present and get the directory this script lives in.

View file

@ -16,10 +16,13 @@ set LAUNCH_MODE=fg
:: NOTE: This variable is ignored if not launching in a debugging mode.
set DEBUG_ADDRESS=127.0.0.1:13002
:: Run Java in headless mode
set VMARG_LIST=-Djava.awt.headless=true
:: Limit the # of garbage collection and JIT compiler threads in case many headless
:: instances are run in parallel. By default, Java will assign one thread per core
:: which does not scale well on servers with many cores.
set VMARG_LIST=-XX:ParallelGCThreads=2
set VMARG_LIST=%VMARG_LIST% -XX:ParallelGCThreads=2
set VMARG_LIST=%VMARG_LIST% -XX:CICompilerCount=2
:: Store current path (%0 gets modified below by SHIFT)