`

jad's readme

阅读更多
This is README file for Jad - the fast Java Decompiler.
Jad home page: http://www.kpdus.com/jad.html
Copyright 2001 Pavel Kouznetsov (jad@kpdus.com).

0. Please read the disclaimer on the Jad home page.

1. Installation.

Unzip jad.zip file into any appropriate directory on your hard drive.
This will create two files:

    - an executable file named 'jad.exe' (Windows *)
      or 'jad' (*n*x)

    - this README file

No other setup is required.

2. How to use Jad

To decompile a single JAVA class file 'example1.class'
type the following:
  1. jad example1.class  

This command creates file 'example1.jad' in the current directory.
If such file already exists Jad asks whether you want to overwrite it or not.
Option -o permits overwriting without a confirmation.

You can omit .class extension and/or use wildcards in the names of
input files.

Option -s <ext> allows to change output file extension: </ext>
  1. jad -sjava example1.class  


This command creates file 'example1.java'. Be careful when using
options -o and -sjava together, because Jad can accidentally overwrite
your own source files.


Jad uses JAVA class name as an output file name. For example, if class
file 'example1.class' contains JAVA class 'test1' then Jad will create
file 'test1.jad' rather than 'example1.jad'. If you want to specify
your own output file name use the output redirection:

   jad -p example1.class > myexm1.java

Option -d allows you to specify another directory for output files,
which are created, by default, in the current directory. For example:
  1. jad -o -dtest -sjava *.class  
  2.    (or jad -o -d test -s java *.class, which has the same effect)  

This command decompiles all .class files in the current directory
and places all output files with extension .java into directory 'test'.

If you want to decompile the whole tree of JAVA classes,
use the following command:
  1. jad -o -r -sjava -dsrc tree/**/*.class 

This command decompiles all .class files located in all
subdirectories of 'tree' and creates output files in subdirectories
of 'src' according to package names of classes. For example, if file
'tree/a/b/c.class' contains class 'c' from package 'a.b', then
output file will have a name 'src/a/b/c.java'.

Note the use of the "two stars" wildcard ('**') in the previous
command. It is handled by Jad rather than the command shell, so on
UNIX the last argument should be single-quoted:
  1. jad -o -r -sjava -dsrc 'tree/**/*.class

In a case you want to check the accuracy of the decompilation or just
curious, there is an option -a which tells Jad to annotate the output
with JAVA Virtual Machine bytecodes.

Jad supports the inner and anonymous classes.
When Jad expands wildcards in the input file names,
it automatically skips matching inner classes.
On UNIX Jad skips inner classes if there is more than
one class specified in the command line.
Jad looks for inner classes in the directory of their top-level
container class.

3. List of the command-line options.

Jad accepts the following options:
  1.  -a       - annotate the output with JVM bytecodes (default: off)  
  2.  -af      - same as -a, but output fully qualified names when annotating  
  3.  -clear   - clear all prefixes, including the default ones (can be abbreviated as -cl)  
  4.  -b       - output redundant braces (e.g., if(a) { b(); }, default: off)  
  5.  -d  
  6. directory for output files (will be created when necessary)  
  7.  -dead    - try to decompile dead parts of code (if any) (default: off)  
  8.  -disass  - disassemble method bytecodes (no JAVA source generated)  
  9.  -f       - output fully qualified names for classes/fields/methods (default: off)  
  10.  -ff      - output class fields before methods (default: after methods)  
  11.  -i       - output default initializers for all non-final fields  
  12.  -l  - split strings into pieces of maximum chars (default: off)  
  13.  -lnc     - annotate the output with line numbers (default: off)  
  14.  -lradix - display long integers using the specified radix (810 or 16)  
  15.  -nl      - split strings on newline character (default: off)  
  16.  -nocast  - don't generate auxiliary casts  
  17.  -nocode  - don't generate the source code for methods  
  18.  -noconv  - don't convert Java identifiers (default: convert)  
  19.  -noctor  - suppress the empty constructors  
  20.  -nodos   - do not check for class files written in DOS mode (CR before NL, default: check)  
  21.  -nofd    - don't disambiguate fields with the same names by adding signatures to their names (defaultdo)  
  22.  -noinner - turn off the support of inner classes (default: on)  
  23.  -nolvt   - ignore Local Variable Table information  
  24.  -nonlb   - don't output a newline before opening brace (defaultdo)  
  25.  -o       - overwrite output files without confirmation (default: off)  
  26.  -p       - send decompiled code to STDOUT (e.g., for piping)  
  27.  -pi - pack imports into one line after imports (default3)  
  28.  -pv - pack fields with identical types into one line (default: off)  
  29.  -pa - prefix for all packages in generated source files  
  30.  -pc - prefix for classes with numerical names (default: _cls)  
  31.  -pf - prefix for fields with numerical names (default: _fld)  
  32.  -pe - prefix for unused exception names (default: _ex)  
  33.  -pl - prefix for locals with numerical names (default: _lcl)  
  34.  -pm - prefix for methods with numerical names (default: _mth)  
  35.  -pp - prefix for method parms with numerical names (default: _prm)  
  36.  -r       - restore package directory structrure  
  37.  -radix - display integers using the specified radix (810 or 16)  
  38.  -s - output file extension (by default '.jad')  
  39.  -safe    - generate additional casts to disambiguate methods/fields (default: off)  
  40.  -space   - output space between keyword (if/for/while/etc) and expression (default: off)  
  41.  -stat    - display the total number of processed classes/methods/fields  
  42.  -t       - use tabs instead of spaces for indentation  
  43.  -t  - use spaces for indentation (default4)  
  44.  -v       - display method names being decompiled  
  45.  -8       - convert UNICODE strings into 8-bit strings  
  46.             using the current ANSI code page (Win32 only)  
  47.  -&       - redirect STDERR to STDOUT (Win32 only)  
  48.   
  49. l single-word options have three formats:  
  50.   
  51. -o    - 'reverses' value of an option  
  52. -o+   - set value to 'true' or 'on'  
  53. -o-   - set value to 'false' or 'off'  

<num><num><num><num><num><num> <pfx> <pfx> <pfx> <pfx> <pfx> <pfx> <pfx><num><ext><num><num> You can specify the options you want to be set by default in the environment variable
JAD_OPTIONS. For example:

JAD_OPTIONS=-ff+ -nonlb+ -t+ -space+
</num></num></ext></num></pfx> </pfx> </pfx> </pfx> </pfx> </pfx> </pfx> </num></num></num></num></num></num>
分享到:
评论

相关推荐

    jad158g.win (2).zip

    除了jad.exe,压缩包中还包含两个Readme文件,Readme.txt和Readme。.txt,这通常是提供软件的使用说明、授权信息或者版本更新等内容。用户在使用jad.exe之前,应该阅读这些文档,以确保正确且合法地使用该工具。 在...

    jad.exe+readme.txt

    -s &lt;ext&gt; - output file extension (by default '.jad') -space - output space between keyword (if/for/while/etc) and expression (default: off) -stat - display the total number of processed classes/...

    Java反编译软件JAD1

    This is README file for Jad - the fast Java Decompiler. Jad home page: http://www.geocities.com/SiliconValley/Bridge/8617/jad.html Copyright 1997-99 Pavel Kouznetsov (kpdus@geocities.com). 0. Please ...

    myeclipse加入jad查看class文件

    最后,阅读`Readme.txt`文件是非常重要的,它通常包含了关于JAD的使用说明、版本信息、许可协议等关键细节。确保仔细阅读并遵循这些指导,以确保正确、合法地使用JAD。 通过这种方式,你可以方便地在MyEclipse中...

    java反编译工具jad 1.5.8g(可以反编译jdk1.5,1.6)

    java反编译工具jad 1.5.8g支持 jdk1.5,jdk1.6。... jad -sjava -r -8 -o **\*.class &lt;br&gt;--------------- This is README file for Jad - the fast Java Decompiler. Jad home page: ...

    Java反编译工具把.class文件转换为.java文件

    或名为`jad`,适用于*nix系统),另一个是此README文件。无需进行额外设置即可使用。 2. **基本使用**: - 使用命令行界面调用Jad命令进行反编译操作。例如,若要反编译一个名为`example1.class`的文件,则可以...

    NOKIA 5800斗地主 S60V5

    jad文件是J2ME(Java 2 Micro Edition)平台上用来描述和部署Java应用的标准文件,系统通过jad文件来理解和安装JAR包。在安装游戏时,手机会先读取jad文件,然后下载并安装对应的jar文件。 NOKIA 5800作为一款搭载...

    JAVA反编译jadnt158

    1. **安装与下载**:首先,你需要从可靠的来源下载jadNT 158的压缩包,包含jad.exe和Readme.txt等文件。确保你的系统已经安装了Java环境,因为jadNT依赖于JVM运行。 2. **解压与配置**:解压缩文件到一个方便的位置...

Global site tag (gtag.js) - Google Analytics