产品环境:Env3
UAT环境:Env2Instance
环境:Env1
工具:
java反编译工具:java Decompiler(jd_gui)
比较工具:Beyond Compare(很好用的比较工具,推荐)
维护代码:antlr-2.7.6rc1.jar(例如)
产品发布时一般不会包含源代码,假如没有源代码的情况下,我们维护时,需要从代码库中拿源代码,这就需要保证代码库中的代码和产品中的代码是一致的,如有不一致的情况需要merger到一起,步骤如下:
1) 从Env3拿到我们要维护的模块的代码包,
2) 用反编译工具打开代码包后:file –> save all sources,将反编译后的代码另存到本地
如:D:/Env3/antlr-2.7.6rc1.src.zip
3) 从代码库中拿到我们需要维护的同模块的源代码,并进行编译打包:同样命名为:antlr-2.7.6rc1.jar
4) 反编译antlr-2.7.6rc1.jar,并将代码另存为:D:/Env2/antlr-2.7.6rc1.src.zip
5) 将生成的两个zip包解压缩
Dir1: D:/Env3/antlr-2.7.6rc1.src
Dir2: D:/Env2/antlr-2.7.6rc1.src
6) 用比较工具:Beyond Compare 打开Dir1和Dir2进行比较,Expand All Folders,如有不同的文件显示颜色为红色,merger不同文件
7) 生成一个Baseline版本。
8) 在baseline 版本中进行修改
注意:
3)中编译时用的编译器最好和产品中的一致,可以用IDE自带的Export功能,也可以用 Ant等,推荐用后者。
4)中反编译后的代码可能和源代码有些不同的地方。
6)中比较是要比较所有代码,不能只比较要修改的代码 |