分享

利用bat反编译jar包生成源码jar包 ,Java技术文章,Java系列教程,Java

 longwangye533 2010-01-18

利用bat反编译jar包生成源码jar包
www. 时间:2008-01-16 作者:佚名 编辑:本站 点击:  [评论]
-
-
 

反编译所使用的工具是jad.exe,笔者的测试版本是1.5.8e,压缩与解压缩使用的是WinRAR

jad.exe 可反编译一个class文件为java文件,笔者的BAT可通过此工具将一个jar包反编译成一个完整的源码jar包,同时生成的目录也可以在eclipse中使用

BAT脚本见后

安装方法如下:

        复制粘贴后面的文本为一个BAT,然后与jad.exe放在同一个目录即可(WinRAR需正确安装)

使用方法如下:   (有3种使用方法, 使用其中任意一种均可,结果是相同的)

      1. 双击BAT,提示输入需反编译的jar包,请输入完整的jar路径

     2. 直接将 jar 包拖放在bat上

     3.右键点击jar包,选择打开方式,然后选择使用该BAT来执行

运行后的结果如下:

      在jar包的同一目录下, 将会生成一个目录,一个jar,目录下有两个子目录,一个目录存放解压缩后的所有class,一个目录存放反编译后的java文件,jar包是用源码压缩生成的

几点说明:

     1. 工具中使用的WinRAR是自动识别安装路径的,请正确安装WinRAR

    2. 工具使用的jad.exe,须与BAT放在同一目录,或者放在PATH可搜索到的位置

    3.  jar包中非class文件,也会完整拷贝在源码目录下,方便生成源码工程

    4. 生成的目录名与原 jar 包同名, 生成的源码 jar 包的文件名是在原名称中加入-src而生成, 如原 jar 包为 jdbc.jar, 则生成的目录名为 jdbc, 而生成的源码jar 包名则为 jdbc-src.jar

    5. eclipse使用方法1, 将BAT生成的目录放在workspace中,然后创建同名工程

    6. eclipse使用方法2,在 eclipse 中创建同名工程,使用src为源文件目录,bin为class文件目录,然后将BAT生成的目录拷贝在eclipse的workspace中

 

该BAT为 blog.csdn.net/seavers 原创, BAT源码仅供个人学习,使用,研究,未经本人同意,不可用于商业用途

作者:  seavers

QQ:   55307885

Email : seavers@163.com

 

如果您在使用中有什么不懂的, 欢迎朋友们Email或QQ联系我, 也欢迎一起讨论BAT或JAVA的各种技术

 

 

 

 

 

BAT源码如下: (请直接拷贝在BAT文件中)

 

 

::作者:     seavers
::QQ:       55307885
::Email:    seavers@163.com
::blog:     blog.csdn.net/seavers (在此blog上首次发布该bat)
::功能:     反编译jar包,生成对应的源码jar包,详细说明方档请登陆我的blog

 

::打开/关闭命令行显示
@echo OFF

::::::::::::::::::::::::::::解析并设置变量::::::::::::::::::


::查找jad文件的路径, 这里取的jad.exe, 表示从PATH中查找,如果想手工指定,需在这里修改
set JAD_PATH=jad.exe

::设置解压出的class文件存放的位置(相对路径)
set CLASS_PATH=bin

::设置反编译后的java文件存放的位置(相对路径)
set JAVA_PATH=src

::检查JAD文件是否存在bat所在目录下,
if exist "%~dp0jad.exe" set JAD_PATH=%~dp0jad.exe

::判断参数个数,如果没有文件参数,则报错,这里也可以使用%~f1,也可以用%1,没有关系,之后要去掉引号
if ""%1""=="""" (set /P JAR_PATH=请输入要反编译的JAR包的路径...) else (set JAR_PATH=%~f1)
if ''%JAR_PATH:~0,1%%JAR_PATH:~0,1%''==''""'' set JAR_PATH=%JAR_PATH:~1,-1%

::获取源代码存放的路径,这里取JAR包所在路径,然后去掉".jar"作为文件夹路径, 这里的LOCATION不能带引号,因为下面还要追加字符)
if ""%2""=="""" (set LOCATION=%JAR_PATH:~0,-4%) elsehttp://msnpiki./index.php/Main_Page-->

文章出处:DIY部落(http://www./course/3_program/java/javajs/2008116/96535.html)

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多