ein ‚Werkzeug‘ wäre ein Eclipse oder eine sonstige IDE, bei der man das Compilation-Level Schritt für Schritt runterschalten kann,
was jeweils neu angemeckert wird ist neue Sprachfeatures
oder auch nur simple Änderungen, wie lange habe ich zwischen den Versionen hin und her mit @Override erlaubt oder nicht erlaubt bei Implementierung von Interfacen zu kämpfen gehabt…
automatische Konvertierung (also sicherlich von hoch auf niedrig?) gibts aber nun nicht, ziemlich heißes Eisen,
und welcher Code ist es nicht wert, dass sich ein Programmierer mit Kompetenz darum kümmert?
Stimmt, ein paar mehr Infos wären hier hilfreich. Es gibt ja den JavaCompiler mit dem man sowas (auf der untersten Ebene tatsächlich recht einfach) basteln könnte…
while (compiler.compile(code, version).hasErrors()) version += 0.1;
aber natürlich könnte man da (speziell, wenn es um die Versions-Konvertierung geht) beliebig weit gehen. Eclipse war zwar trotzdem ein gutes Stichwort, weil man damit relativ einfach einen AST aus dem Code erzeugen und darin dann nach Belieben rumpfuschen kann, aber das “relativ” ist hier schon sehr relativ: Das ist nichts, was man mal schnel hinhackt.