我正在尝试编写一个批处理文件,将classes-dex2jar.jar写入其他文件夹。 我尝试了以下方法:
d2j-dex2jar %arg1% -o %arg2%
这里,arg1是classes.dex的路径,arg2是我希望存储生成的classes-dex2jar.jar文件的文件夹。 (E:\新\)
现在,我收到第二个参数的 FileNotFoundException 异常。它说
java.io.FileNotFoundException: E:\new" (The filename, directory name,
or volume label syntax is incorrect)
at java.io.FileOutputStream.open(Native Method)
at java.io.FileOutputStream.<init>(Unknown Source)
at java.io.FileOutputStream.<init>(Unknown Source)
at org.apache.commons.io.FileUtils.openOutputStream(FileUtils.java:77)
at com.googlecode.dex2jar.v3.Dex2jar.to(Dex2jar.java:250)
at com.googlecode.dex2jar.tools.Dex2jarCmd.doCommandLine(Dex2jarCmd.java
:110)
at com.googlecode.dex2jar.tools.BaseCmd.doMain(BaseCmd.java:174)
at com.googlecode.dex2jar.tools.Dex2jarCmd.main(Dex2jarCmd.java:34)
请告诉我我做错了什么?
最佳答案
不要将文件夹作为参数传递,而是将 jar 文件名传递给它。
d2j-dex2jar classes.dex -o "E:\new\classes.jar"
还要确保 E:\new
目录存在。 Dex2jar 不会创建新目录。创建一个目录,然后向 d2j-dex2jar 传递该目录的完整路径以及所需的 jar 文件名。
关于java - 将 dex2jar 的输出写入其他文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27653491/