$ diff <(javap -c -p OldWay) <(javap -c -p NewWay) (25.0.4.1+1-LTS, class name normalised to X) no differences (57 lines of javap output each) $ cmp OldWay.class NewWay.class (javac -g:none; NewWay renamed to OldWay inside the class file) identical, byte for byte (2249 bytes) $ diff <(javap -c -p -l OldWay) <(javap -c -p -l NewWay) (default javac -g keeps line numbers) 8c8 < line 9: 0 --- > line 3: 0 52,57c52,57 < line 11: 0 < line 12: 14 < line 13: 25 < line 14: 37 < line 15: 44 < line 16: 90 --- > line 5: 0 > line 6: 14 > line 7: 25 > line 8: 37 > line 9: 44 > line 10: 90 67c67 < line 13: 0 --- > line 7: 0