环境对比工具

环境对比工具

简易版

FileCompareTool.jar和 ReadWin.bat / ReadLinux.sh放到 OA安装目录

1、获取原环境信息

执行ReadWin.bat / ReadLinux.sh自动化脚本,生成source.db文件

  1. 对比目标环境

将步骤一生成的source.db、FileCompareTool.jar和 ReadWin.bat / CompareLinux.sh放到 对比环境的OA安装目录

生成对比结果文件 compareResult.txt 文件可直接打开分析,或者拷贝到excel中进行分析

进阶版

1、获取原环境信息

运行命令:

java -jar FileCompareTool.jar read md5 D:\test\source D:\test\compare.db

参数解释:

java -jar FileCompareTool.jar read md5 【原环境文件夹路径】 【原环境信息文件(自定义)】

2、对比目标环境

1、迁移【原环境信息文件】至待对比环境上

2、执行对比命令:

java -jar FileCompareTool.jar compare md5 D:\test\compare.db D:\test\target D:\test\compareResult.txt

参数解释:

java -jar FileCompareTool.jar compare md5 【原环境信息文件】 【待比较环境文件夹路径】 【对比结果】

对比结果文件:

可能遇到的问题

1、提示 Unsupported major.minor version 52.0

Exception in thread "main" java.lang.UnsupportedClassVersionError: com/seeyon/fi                                                                              lescompare/FileCompareTool : Unsupported major.minor version 52.0

        at java.lang.ClassLoader.defineClass1(Native Method)

        at java.lang.ClassLoader.defineClass(ClassLoader.java:800)

        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:14                                                                              2)

        at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)

        at java.net.URLClassLoader.access$100(URLClassLoader.java:71)

        at java.net.URLClassLoader$1.run(URLClassLoader.java:361)

        at java.net.URLClassLoader$1.run(URLClassLoader.java:355)

        at java.security.AccessController.doPrivileged(Native Method)

        at java.net.URLClassLoader.findClass(URLClassLoader.java:354)

        at java.lang.ClassLoader.loadClass(ClassLoader.java:425)

        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)

        at java.lang.ClassLoader.loadClass(ClassLoader.java:358)

        at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482)

使用JDK1.8以上版本的运行对比工具

  1. 运行中提示数据存在争议

【文件路径】存在争议且SHA值不同,原SHA【原SHA码】 新SHA【新SHA码】,仅保留了最新的【新SHA码】

系java底层读取jar中文件读到了历史版本,不是关注的文件,直接忽略。若相关,需人工检查下(一个项目中最多两三个)

LICENSED UNDER CC BY-NC-SA 4.0