My problem was not just a .ear file extension recursively (I wrote a Java class for this - recursion made it simple.) After the .ear file extension, I have to delimit directories to check for any changes. If nothing but timestamps has changed, then I know that the assembly creates different binary files.
The second problem is that our build process generates hundreds of .xml files, and subsequent builds re-generate these .xml files with elements in a different order. I do not know why. When I expand two .ear files made using reverse assemblies without any changes, diff in the resulting directories shows hundreds of .xml files with diff, although they are functionally equivalent.
In addition to the .ear file extension recursively, I need to diff and exclude the XML files in specific directories. I thought Cygwin diff would do this, but the -exclude switch does not recognize path information:
Cygwin diff will not exclude files if the directory is included in the template
If I cannot find a solution for this, I will write another Java class to go through the entire directory structure, using one diff level in each directory and excluding the .xml files in the corresponding directories.
It feels like I'm reinventing the wheel, but right now I can't find the wheel.
Dean schulze
source share