- 浏览: 2870196 次
- 性别:
- 来自: 武汉
文章分类
- 全部博客 (1173)
- 名言警句 (5)
- 心情随笔 (50)
- 数据库 (57)
- Java基础 (241)
- J2EE框架 (91)
- 数据结构 (12)
- 程序设计 (21)
- WEB技术 (128)
- 网络日志 (12)
- IT资讯 (247)
- linux (64)
- solaris (2)
- 其它 (143)
- WebService (4)
- 日语学习 (2)
- 机器人 (5)
- Android (5)
- cgywin (3)
- Game (1)
- DWR (1)
- spring (8)
- canvas (1)
- Guava (3)
- Modbus (5)
- 测试 (6)
- mongodb (9)
- Quartz (2)
- Cron (1)
- windows (2)
- 持续集成 (1)
- bootstrap (3)
- 结对编程 (1)
- nodejs (1)
- Netty (1)
- 安全 (3)
- webstorm (2)
- sparkline (1)
- Job (1)
- git (3)
- Maven (3)
- knockout (5)
- jquery (1)
- bower (1)
- docker (1)
- confluence (4)
- wiki (1)
- GoogleMap (1)
- jekyll (10)
- ruby (2)
- npm (3)
- browserify (1)
- gulp (3)
- openwrt (1)
- discuz (3)
- 输入法 (1)
- JPA (1)
- eclipse (2)
- IntelliJ (1)
- css (1)
- 虚拟机 (1)
- 操作系统 (1)
- azkaban (2)
- scrum (1)
最新评论
-
pangxiea_:
你好, 想请问一下 Linux下 这么使用rxtxcomm 在 ...
使用Java进行串口通信 -
abababudei:
请教一下,这个您是怎么解决的:/dev/ttyS2enteri ...
Java应用程序的MODBUS通讯 -
xuniverse:
hannibal005 写道楼主,我问下 request.se ...
用javascript与java进行RSA加密与解密 -
atxkm:
找了一下午,终于找到了
gulp 拷贝文件时如何移除文件目录结构 -
kalogen:
gtczr 写道非常感谢,经过我自己的修改,已经完美实现。发出 ...
用javascript与java进行RSA加密与解密
Jad调用参数如下:
Usage: jad [option(s)] <filename(s)> Options: -a - generate JVM instructions as comments (annotate) -af - output fully qualified names when annotating -b - generate redundant braces (braces) -clear - clear all prefixes, including the default ones -d <dir> - directory for output files -dead - try to decompile dead parts of code (if there are any) -dis - disassembler only (disassembler) -f - generate fully qualified names (fullnames) -ff - output fields before methods (fieldsfirst) -i - print default initializers for fields (definits) -l<num> - split strings into pieces of max <num> chars (splitstr) -lnc - output original line numbers as comments (lnc) -lradix<num>- display long integers using the specified radix -nl - split strings on newline characters (splitstr) -noconv - don't convert Java identifiers into valid ones (noconv) -nocast - don't generate auxiliary casts -noclass - don't convert .class operators -nocode - don't generate the source code for methods -noctor - suppress the empty constructors -nodos - turn off check for class files written in DOS mode -nofd - don't disambiguate fields with the same names (nofldis) -noinner - turn off the support of inner classes -nolvt - ignore Local Variable Table entries (nolvt) -nonlb - don't insert a newline before opening brace (nonlb) -o - overwrite output files without confirmation -p - send all output to STDOUT (for piping) -pa <pfx>- prefix for all packages in generated source files -pc <pfx>- prefix for classes with numerical names (default: _cls) -pe <pfx>- prefix for unused exception names (default: _ex) -pf <pfx>- prefix for fields with numerical names (default: _fld) -pi<num> - pack imports into one line using .* (packimports) -pl <pfx>- prefix for locals with numerical names (default: _lcl) -pm <pfx>- prefix for methods with numerical names (default: _mth) -pp <pfx>- prefix for method parms with numerical names (default:_prm) -pv<num> - pack fields with the same types into one line (packfields) -r - restore package directory structure -radix<num>- display integers using the specified radix (8, 10, or 16) -s <ext> - output file extension (default: .jad) -safe - generate additional casts to disambiguate methods/fields -space - output space between keyword (if, while, etc) and expression -stat - show the total number of processed classes/methods/fields -t<num> - use <num> spaces for indentation (default: 4) -t - use tabs instead of spaces for indentation -v - show method names while decompiling -8 - convert Unicode strings into ANSI strings (ansi) -& - redirect STDERR to STDOUT
部分参数解释如下:
-8:
把Unicode编码的字符转换成ASCII输出,这样程序中的中文就会原样输出,而不是令人费解的uxxxx这种形式
-nl:
把字符串按照
切分输出,这样很长的字符串也不至于都放在一行,增强了可读性。
JAVA手机网[www.cnjm.net]
-ff:
把数据成员放在方法之前,这样就符合大家写程序的习惯了
-space:
在if, while等关键字和表达式之间加入空格,这是java的良好编程风格
-nonlb:
不在开大括号(也就是左大括号)前加回车,这是大部分java程序员的习惯风格,大家可以根据自己的习惯选用
经过这样的配置,jad输出的java代码几乎跟手写的没有什么两样
具体我的示例如下:
在DOS下进入jad目录后,敲入:
D:\My Document\download\jad>jad -d D:\java -ff -nl -space -8 -nonlb -r -s java E:\vbao\WEB-INF\classes\com\sztelecom\vbao\**\*.class
- jad.zip (197.8 KB)
- 描述: Jad v1.5.8f
- 下载次数: 174
评论
2 楼
sunxboy
2008-11-05
我也遇到跟你一样的情况。
其实改一下也不麻烦的。
其实改一下也不麻烦的。
1 楼
neoscript
2008-11-03
源代码中Logger.getLogger(Some.class)这样的代码,被反编译成如下格式:
Logger.getLogger(com/dep/Some)。
有没有什么参数可以保持原来的格式吗?
Logger.getLogger(com/dep/Some)。
有没有什么参数可以保持原来的格式吗?
发表评论
-
高级Java程序员值得拥有的10本书
2015-05-04 07:24 810Java是时下最流行的编程语言之一。市面上也出现了适合初学者 ... -
深入理解java异常处理机制
2015-01-30 09:30 13271. 引子 try…catch…fi ... -
java 运行时参数设置
2015-01-07 09:13 865JVM的运行时参数: -Xms为执行单元内存的1/4, ... -
每个Java开发者都应该知道的5个JDK工具
2014-12-29 12:37 1139JDK是Java语言的软件开 ... -
使用双重锁判定可以大幅降低锁的征用
2014-12-29 12:30 746class ObjInstance { //单例 pri ... -
MAVEN Scope使用说明
2014-11-24 09:40 757在Maven的依赖管理中,经常会用到依赖的scope设置。这 ... -
Spring4 quartz job xml configuration
2014-11-11 09:46 14371. 定义job details public ... -
Add items into list in one line using guava
2014-11-10 10:54 721//@formatter:off fina ... -
配置动态读取(变化)文件 in Spring
2014-11-10 08:51 13231. 从环境变量中读取路径: <bean id=&q ... -
JAVA实现AES加密与解密
2014-11-04 15:34 659package com.eifesun.monitor.up ... -
Netty4.x分析
2014-07-31 11:06 1461官网定义: netty是一个异步、事件驱动的网络应用框架,用 ... -
Ways to sort lists of objects in Java based on multiple fields
2014-07-21 17:19 7711. the first way: Sorting wit ... -
how to parse a String to BigDecimal
2014-07-21 10:08 917private BigDecimal parsePrice( ... -
order list using google guava
2014-07-21 09:08 884Predicate<String> filter ... -
Java 读文件操作
2014-07-08 14:09 8861. only use java core, no exte ... -
怎样使Java 中测试按一定顺序执行
2014-03-10 11:27 1318@FixMethodOrder(MethodSorters. ... -
如何实现在当类初始化时,自动调动某个方法
2014-02-14 14:44 964有两种思路, 1. 将这个类实现为thread类 (or ... -
持续集成JenkinsAPI常见用法
2014-02-10 13:54 43jenkins(持续集成开源工具)提供了丰富的api接口,基 ... -
Sonar 安装与使用
2014-01-13 10:49 1730Sonar 是一个用于代码质量管理的开放平台。通过插件机制, ... -
源代码管理分析工具 Source Navigator的安装与使用
2014-01-13 09:51 1893Source-Navigator是原来redhat开发的一个 ...
相关推荐
在实际应用中,jad反编译工具还可以与其他工具结合使用,比如调试器、静态代码分析工具等,形成一套完整的逆向工程流程。同时,随着技术的发展,反编译工具也在不断进化,以应对更复杂的代码优化和混淆策略,提高反...
标题:“JAD反编译工具” 在Java编程世界中,JAD(Java Application Decompiler)是一款知名的反编译工具,它主要用于将已编译的Java字节码(.class文件)转换回源代码格式(.java文件)。这个过程被称为反编译,对于...
### jad反编译工具的安装说明 #### 一、简介 jad是一款非常流行的Java反编译工具,它能够将Java字节码(.class文件)转换为可读性较强的源代码。jad支持从1.1到1.8的Java版本,并且在反编译过程中可以很好地保留原有...
标题中提到的"jad-java反编译工具eclipse插件"意味着JAD已经与Eclipse集成,成为Eclipse IDE的一个插件。Eclipse是一款广泛使用的开源集成开发环境,拥有丰富的插件生态系统,开发者可以根据需要安装各种插件来扩展...
总结来说,JAVA反编译工具JAD是一款强大的工具,它能帮助开发者洞察Java字节码背后的逻辑,提高代码的透明度,但也需要谨慎使用,以避免侵权行为。在软件开发中,了解如何使用JAD这样的工具,可以提升问题排查和代码...
jad反编译工具安装文件jad反编译工具安装文件jad反编译工具安装文件jad反编译工具安装文件jad反编译工具安装文件jad反编译工具安装文件jad反编译工具安装文件jad反编译工具安装文件jad反编译工具安装文件
下面我们将深入探讨MyEclipse中如何使用JAD反编译工具以及其基本操作教程。 1. **JAD工具介绍** JAD是Java反编译领域的常用工具,它能够帮助开发者查看已编译的Java类文件的源代码,即使原始的`.java`文件丢失或未...
jad反编译工具是一款在IT行业中用于解析Java字节码并将其转换回源代码的工具。JAD(Java Decompiler)是许多开发者在调试、学习或逆向工程Java应用程序时常用的软件,它可以帮助我们理解已编译的.class文件中的代码...
java反编译工具(jad.exe),例子:example1.class 结果是将example1.class反编译为example1.jad。将example1.jad改为example1.java即得源文件
Java反编译工具,如jad.exe,是程序员在开发和调试过程中非常重要的辅助软件。它允许开发者将已编译的.class文件转换回源代码的.java文件形式,这对于理解已有的二进制代码、查看混淆后的代码或者恢复丢失的源代码来...
然而,值得注意的是,反编译他人代码可能涉及到版权问题,所以在使用jad或其他反编译工具时,应确保遵循合法的使用规定。 总的来说,jad作为一款功能强大的Java反编译工具,为开发者提供了深入了解Java字节码的途径...