【问题标题】:errro while creating apk through apktool d2j-dex2jar通过 apktool d2j-dex2jar 创建 apk 时出错
【发布时间】:2017-02-01 08:12:58
【问题描述】:

重新编译 apktool 生成的代码时出现以下错误:

d2j-dex2jar b base

错误:

java.nio.file.NoSuchFileException: b 在 sun.nio.fs.WindowsException.translateToIOException(未知来源) 在 sun.nio.fs.WindowsException.rethrowAsIOException(未知来源) 在 sun.nio.fs.WindowsException.rethrowAsIOException(未知来源) 在 sun.nio.fs.WindowsFileSystemProvider.newByteChannel(未知来源) 在 java.nio.file.Files.newByteChannel(未知来源) 在 java.nio.file.Files.newByteChannel(未知来源) 在 java.nio.file.Files.readAllBytes(未知来源) 在 com.googlecode.d2j.reader.zip.ZipUtil.readDex(ZipUtil.java:57) 在 com.googlecode.d2j.reader.zip.ZipUtil.readDex(ZipUtil.java:53) 在 com.googlecode.dex2jar.tools.Dex2jarCmd.doCommandLine(Dex2jarCmd.java :104) 在 com.googlecode.dex2jar.tools.BaseCmd.doMain(BaseCmd.java:288) 在 com.googlecode.dex2jar.tools.Dex2jarCmd.main(Dex2jarCmd.java:32)

【问题讨论】:

  • 没有选项-b。阅读来自d2j-dex2jar --help的人。
  • @zed 我已将此命令与 'b' 一起用于创建其他 apk 文件
  • 这是用于 apktool 而不是 dex2jar

标签: java android decompiling apktool


【解决方案1】:

您使用了错误的标志。因此错误说:我不明白你:'b'文件不存在。更仔细地阅读帮助。

编辑

d2j-dex2jar --help

d2j-dex2jar -- 将 dex 转换为 jar

用法:d2j-dex2jar [选项] [file1 ... fileN]

选项:

-d,--debug-info 翻译调试信息

-e,--file 详细异常文件,默认为 $current_dir/[文件名]-error.zip

-f,--强制强制覆盖

-h,--help 打印此帮助信息

-n,--not-handle-exception 不处理任何抛出的异常 dex2jar

-o,--output 输出.jar 文件,默认为 $current_dir/[文件名 我]-dex2jar.jar

-os,--optmize-synchronized 优化同步

-p,--print-ir 打印ir到Syste.out

-r,--reuse-reg 在生成 java .class 时重用 regiter 文件

-s 与 --topological-sort/-ts 相同

-ts,--topological-sort 按拓扑排序块,这将 产生更多 可读代码

-v,--verbose 显示进度

版本:reader-1.15、translator-0.0.9.15、ir-1.12

要组装和拆卸,请阅读手册:

https://sourceforge.net/p/dex2jar/wiki/ModifyApkWithDexTool/

# build jar

d2j-jasmin2jar.sh -f  -o test_apk_jasmin.jar  test_apk_jasmin/ 

# verify jar

d2j-asm-verify.sh test_apk_jasmin.jar

# convert to dex

d2j-jar2dex.sh  -f -o classes.dex test_apk_jasmin.jar

# make a copy

cp test_apk-debug.apk test_apk-debug-toast.apk

# replace classes.dex in test_apk-debug-toast.apk

zip -r test_apk-debug-toast.apk classes.dex

# sign the apk

d2j-apk-sign.sh -f -o test_apk-debug-toast-signed.apk test_apk-debug-toast.apk

【讨论】:

  • 我用这个命令和'b'来创建其他apk文件,youtube.com/watch?v=dZzGUNm_yX0
  • @MuhammadMuazzam,哈哈。这是不可能的。阅读我更新的答案。没有标志b
  • @MuhammadMuazzam,哈哈。在您的链接中写道,您必须使用apktools 而不是d2j-dex2jar
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-07-28
  • 2023-03-05
  • 1970-01-01
  • 2013-02-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多