WindySha / Xpatch

This is a tool to repackage apk file, then the apk can load any xposed modules installed in the device. It is another way to hook an app without root device.
Apache License 2.0
2.56k stars 393 forks source link

java.lang.StringIndexOutOfBoundsException: begin 1, end -1, length 2 #111

Open AiziChen opened 2 years ago

AiziChen commented 2 years ago

In some applications, dex to jar will occurred java.lang.StringIndexOutOfBoundsException. referer to this, dex2jar need to update to the latest version.

totally error trace:

java.lang.StringIndexOutOfBoundsException: begin 1, end -1, length 2
    at java.base/java.lang.String.checkBoundsBeginEnd(String.java:4601)
    at java.base/java.lang.String.substring(String.java:2704)
    at org.objectweb.asm.signature.SignatureReader.parseType(SignatureReader.java:169)
    at org.objectweb.asm.signature.SignatureReader.acceptType(SignatureReader.java:130)
    at org.objectweb.asm.commons.Remapper.mapSignature(Remapper.java:162)
    at org.objectweb.asm.commons.RemappingClassAdapter.visitField(RemappingClassAdapter.java:90)
    at org.objectweb.asm.ClassVisitor.visitField(ClassVisitor.java:272)
    at com.googlecode.d2j.dex.Dex2Asm.convertField(Dex2Asm.java:492)
    at com.googlecode.d2j.dex.Dex2Asm.convertClass(Dex2Asm.java:439)
    at com.googlecode.d2j.dex.Dex2Asm.convertClass(Dex2Asm.java:357)
    at com.googlecode.d2j.dex.Dex2Asm.convertDex(Dex2Asm.java:464)
    at com.googlecode.d2j.dex.Dex2jar.doTranslate(Dex2jar.java:277)
    at com.googlecode.d2j.dex.Dex2jar.to(Dex2jar.java:377)
    at com.googlecode.dex2jar.tools.Dex2jarCmd.doCommandLine(Dex2jarCmd.java:118)
    at com.googlecode.dex2jar.tools.BaseCmd.doMain(BaseCmd.java:293)
    at com.storm.wind.xpatch.task.ApkModifyTask.dex2JarCmd(ApkModifyTask.java:87)
    at com.storm.wind.xpatch.task.ApkModifyTask.dumpJarFile(ApkModifyTask.java:68)
    at com.storm.wind.xpatch.task.ApkModifyTask.run(ApkModifyTask.java:40)
    at com.storm.wind.xpatch.MainCommand.doCommandLine(MainCommand.java:244)
    at com.storm.wind.xpatch.base.BaseCommand.doMain(BaseCommand.java:125)
    at com.storm.wind.xpatch.MainCommand.main(MainCommand.java:91)