很好用的两个工具:jd-gui(查看jar包中class)、jadx(可以查看Android的apk)。
jd-gui在mac上修复
但是jd-gui在mac上会提示找不到jdk。我们可以使用下面的方式来修复。
编辑文件【/Applications/JD-GUI.app/Contents/MacOS/universalJavaApplicationStub.sh】,在文件前面加入下面的一段,既可解决问题。
export JAVA_HOME=$(/usr/libexec/java_home -v11)
jadx在windows安装了杀毒软件后,无法打开
在安装了一些杀毒软件后,会发现打不开,报错142。
真正的原因是:powershell.exe这个程序,被杀毒软件禁止用户执行了,只允许一个特殊权限用户能执行。并且windows 用户只要执行带powershell.exe的程序,都会被禁止。
jadx的作者解释了原因:jadx uses dev.dirs:directories library to get application config directory in crossplatform way, and uses powershell only as a fallback way to find path of these folders: here
然后jadx的作者skylot从另一角度解决了该问题:jadx只是需要一个config目录而已。
增加两个环境变量JADX_CACHE_DIR和JADX_CONFIG_DIR 就可以解决该问题。