Command-line APK decompilation helper backed by the adjacent JEB installation.
- JEB home must point to a directory containing
bin/app/jeb.jar. - A JDK with
javaconPATHfor building. No large IDE is required.
JEB home resolution order:
--jeb-homeor-JebHomeJEB_HOMEenvironment variablejeb.homeinjebcli.properties- Current working directory
Persist JEB home in the repository-local config file:
powershell -ExecutionPolicy Bypass -File .\tools\jebcli.ps1 config set jeb.home D:\IT\Android\JEB-5.30.0.202506111623_by_CXV
powershell -ExecutionPolicy Bypass -File .\tools\jebcli.ps1 config get jeb.home
powershell -ExecutionPolicy Bypass -File .\tools\jebcli.ps1 config listFrom this repository:
powershell -ExecutionPolicy Bypass -File .\tools\build.ps1Artifacts are written locally:
build/classes/build/sources.txtdist/jebcli.jar
Use -Clean to remove and rebuild local build outputs:
powershell -ExecutionPolicy Bypass -File .\tools\build.ps1 -Cleanpowershell -ExecutionPolicy Bypass -File .\tools\jebcli.ps1 -Apk C:\path\app.apk -Out .\out\appEquivalent positional form:
powershell -ExecutionPolicy Bypass -File .\tools\jebcli.ps1 C:\path\app.apk .\out\appThe output directory contains:
decompiled/: JEB decompiler exporter output for Dalvik units.resources/: raw non-DEX APK entries copied from the package, preserving APK-relative paths. Binary XML andresources.arscare not decoded.smali/: smali-style Dalvik disassembly text exported from JEB DEX units.jeb-projects/: local JEB project database files used by the headless engines context.metadata.json: input path, JEB home, status, timestamps, Java/resource/smali output counts, and errors.
Invalid input should fail before JEB analysis:
powershell -ExecutionPolicy Bypass -File .\tools\jebcli.ps1 -Apk missing.apk -Out .\out\missingExplicit JEB home:
powershell -ExecutionPolicy Bypass -File .\tools\jebcli.ps1 -JebHome D:\IT\Android\JEB-5.30.0.202506111623_by_CXV -Apk C:\path\app.apk -Out .\out\appExit codes:
0: success2: command-line usage error10: validation error20: JEB initialization error30: analysis error40: export error