Solution 06 is quite good (maybe perfect) from the perspective of binary compatibility. For a while I thought I am going to give up, however then I noticed that there is an added overloaded method. With proper parameters this can cause the previously OK source to become uncompilable.
2 # name of a project to test
5 # the test shall expose a problem between two versions
6 # of one API. select the first version - taskA and a second
7 # version of the of the API taskB
11 # usual locations of API classes for each version
12 apiA=${taskA}/${apitotest}/build/classes/
13 apiB=${taskB}/${apitotest}/build/classes/