es GIBT java-decompiler ... wie sinnvoll allerdings der code ist den du daraus bekommst hängt davon ab was mit diesem nach dem compilen noch so alles gemacht wurde .. z.b. obfuscation, shrinking, byte-code-overloading ... und und und ...
auch ist es wichtig das es in der lizenz erlaubt ist ... und hier muss es ausdrücklich erlaubt sein ... die ausrede : "es wurde ja nicht explizit verboten" zählt nicht ... und es wäre sowohl ohne ausdrückliche erlaubnis als auch natürlich mit explizitem verbot zumindest in deutschland eine straftat und würde gegen das urheberrecht verstoßen ...
da jedoch FAST alle projekte die es in ihrer lizenz erlauben decompiler darauf anzuwenden eh bereits als source zugänglich sind (gibt hier und da ein paar ausnahmen) solltest du lieber gleich nach diesem suchen anstatt zu versuchen möglicherweise obfucated code zu de-compilen ...
es wäre sicherlich möglich ein programm zu schreiben mit dem man class-files "direkt" editieren kann ... aber dort würde im backend auch nichts weiter gemacht als de-compiling ... eventuelle aufbereitung ... und anschließendes re-compiling ...