码迷,mamicode.com
首页 > 编程语言 > 详细

Java学习-039-源码 jar 包的二次开发扩展实例(源码修改)

时间:2015-12-11 14:55:55      阅读:319      评论:0      收藏:0      [点我收藏+]

标签:

最近在使用已有的一些 jar 包时,发现有些 jar 包中的一些方法无法满足自己的一些需求,例如返回固定的格式,字符串处理等等,因而需要对原有 jar 文件中对应的 class 文件进行二次开发扩展,并重新打包文件,替换原有的 jar 文件,满足测试开发自身的需求。

下面以修改 eclipse 默认注释中的 ${date} 和 ${time} 对应的返回样式(如下图所示),进行实例说明。

技术分享

 

整个二次开发的过程如下所示:

0、未修改之前,生成注释的日期、时间显示格式如下所示:

      技术分享

1、获取对应的 jar 包文件,我当前使用的 eclipse 中对应的 jar 文件为:{eclipse 安装目录}\plugins\org.eclipse.text_3.5.300.v20130515-1451.jar,并备份org.eclipse.text_3.5.300.v20130515-1451.jar 文件

2、解压 org.eclipse.text_3.5.300.v20130515-1451.jar 文件到当前目录 org.eclipse.text_3.5.300.v20130515-1451

3、在目录 {eclipase 安装目录}\plugins\org.eclipse.text_3.5.300.v20130515-1451\org\eclipse\jface\text\templates 下反编译字节码 GlobalTemplateVariables.class,生成 GlobalTemplateVariables.java 文件,可使用 jd-gui.exe 反编译字节码 class 文件,并将 GlobalTemplateVariables.class 备份。

4、修改 GlobalTemplateVariables.java 文件

 

------------------------------------- ${date} : 日期格式修改,改为如下所示

public static class Date extends SimpleTemplateVariableResolver
{
    public Date()
    {
        super("date", TextTemplateMessages.getString("GlobalVariables.variable.description.date"));
    }
    protected String resolve(TemplateContext context) {
        // return DateFormat.getDateInstance().format(new Date());
        // Modify by aaron.ffp 2015-12-11
        final SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        return sdf.format(new java.util.Date());
    }
}


------------------------------------- ${time} : 时间格式修改,改为如下所示

public static class Time extends SimpleTemplateVariableResolver
{
    public Time()
    {
        super("time", TextTemplateMessages.getString("GlobalVariables.variable.description.time"));
    }

    protected String resolve(TemplateContext context)
    {
        // return DateFormat.getTimeInstance().format(new Date());
        // Modify by aaron.ffp 2015-12-11
        final SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss.SSS");
        return sdf.format(new java.util.Date());
    }
}

 

 

 

5、编译 GlobalTemplateVariables.java 文件

6、打包

7、替换原 org.eclipse.text_3.5.300.v20130515-1451.jar 文件

8、验证

 

至此, Java学习-039-源码 jar 包的二次开发扩展实例(源码修改) 顺利完结,希望此文能够给初学 JavaWeb 的您一份参考。

最后,非常感谢亲的驻足,希望此文能对亲有所帮助。热烈欢迎亲一起探讨,共同进步。非常感谢! ^_^

 

Java学习-039-源码 jar 包的二次开发扩展实例(源码修改)

标签:

原文地址:http://www.cnblogs.com/fengpingfan/p/5038767.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!