Skip to content

Troubleshooting Q&A

Jan S edited this page May 4, 2020 · 10 revisions

Out of memory problems:

Possible options when Jadx is running out of RAM:

Reduce processing threads count (-j option in CLI)

Before starting the decompilation open in Jadx the Preferences dialog (menu File). Open the Excluded packages editor and add packages you want to exclude from decompiling. The more classes you exclude the more you save.

Common packages you can exclude: android.support android.arch

Assign more RAM (e.g. 6GB) to Jadx:

Using the Jadx command-line version (Linux, Windows, ...)

Edit the script bin/jadx-gui or bin/jadx-gui.bat (Windows) and change the maximum heap memory from 4 (-Xmx4g) to e.g. 8 GB (-Xmx8g) by modifying the definition of DEFAULT_JVM_OPTS:

DEFAULT_JVM_OPTS='"-Xms128M" "-Xmx8g" "-Dawt.useSystemAAFontSettings=lcd" "-Dswing.aatext=true" "-XX:+UseG1GC"'

Using the Jadx Exe version (Windows)

If you are on Windows and using jadx-gui.exe create a text-file jadx-gui.l4j.ini in the same directory jadx-gui.exe is located in. For a maximum 8 GB memory/heap edit the text file and set it's content to:

-Xmx8g

If you are using a unstable version or Jadx or if you have renamed jadx-gui.exe, you also have to adapt the .l4j.ini file-name as well.

Example:

Jadx file-name:        jadx-gui-1.1.0-b1279-2207cd7b.exe
Jadx config file name: jadx-gui-1.1.0-b1279-2207cd7b.l4j.ini.
Clone this wiki locally