我试图将apk转换为源代码。当我输入以下命令
./d2j-dex2jar.sh classes.dex
我遇到了这个例外:
com.googlecode.d2j.DexException: not support version.
at com.googlecode.d2j.reader.DexFileReader.<init>(DexFileReader.java:151)
at com.googlecode.d2j.reader.DexFileReader.<init>(DexFileReader.java:211)
at com.googlecode.dex2jar.tools.Dex2jarCmd.doCommandLine(Dex2jarCmd.java:104)
at com.googlecode.dex2jar.tools.BaseCmd.doMain(BaseCmd.java:288)
at com.googlecode.dex2jar.tools.Dex2jarCmd.main(Dex2jarCmd.java:32)
我的apk版本是Oreo,dexcompiler是dex2jar-2.0。 尽管我知道这个dexcompiler支持最多N版本(如果我错了,请纠正我)。我搜索过这个例外,但我没有找到任何答案。
请帮我解决此异常
答案 0 :(得分:3)
我遇到了同样的问题。使用了更新版本。现在它工作正常。
答案 1 :(得分:0)
我也有同样的问题。
使用来自@john 的链接将在 android 8 下工作。
但是我的设备是 android 10(这很常见)。
根据我的经验,只需更改 dex 文件的标题内容(039 -> 036 或其他支持的版本)有时可以,有时会失败。这取决于您的 apk 使用新的 Java 语法左右。