修改第三方源码并重新打包
1.场景
很多时候需要下载第三方源码修改并重新编译打包,比如mybatis-generator-core-1.3.2.jar需要修改其中的org.mybatis.generator.internal.DefaultCommentGenerator.java。
2.步骤
2.1抽源码并修改
我们可以从jar包里反编译源码(可能跟源码会有些不一致),最好从source包(mvn下载)里解压抽出源码,然后修改。
2.2编译
把class的jar包mybatis-generator-core-1.3.2.jar放在E:\git_other目录下,把mybatis-generator-core-1.3.2-sources.jar解压到当前目录下,mybatis-generator-core-1.3.2-sources。
然后进入到修改的源文件的目录下,在cmd下执行:
E:\git_other\mybatis-generator-core-1.3.2-sources\org\mybatis\generator\internal>javac-encodingutf8-source1.6-target1.6-classpathE:\git_other\mybatis-generator-core-1.3.2.jarDefaultCommentGenerator.java
编译成功。
然后把修改后的class文件替换到mybatis-generator-core-1.3.2.jar下(试用7zip)。
补充说明,如果修改的文件有多个,请按照依赖顺序执行。
针对mybatis-generator:
DefaultCommentGenerator.java:model,xml的默认注释在这里生成
DefaultDAOMethodNameCalculator.java:mapper的默认方法名这里生成
IntrospectedTable.java:xml的默认id这里生成