ho trovato molti riferimenti che spiegano come compilare programmazione una classe Java utilizzando la classe JavaCompiler
:È possibile compilare in modo programmatico il codice sorgente java solo in memoria?
JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
int result = compiler.run(null, null, null, "a_file_name");
Tuttavia, vorrei sapere se v'è una libreria open source che mi permetta di compilare il codice sorgente generato a livello di codice (quindi senza che sia coinvolto un file src) e generi un codice byte in un flusso di output (senza generare un file di classe nel file system).
Per esempio, sto cercando di essere in grado di scrivere qualcosa del genere:
InputStream input = generateSourceCode();
OutputStream output = getByteCode(input);
doCoolStuffWithByteCode(output);
Grazie per qualsiasi aiuto.
Vedere il [Compilatore basato su testo ** SSCCE ** (http://pscode.org/stbc/) per una dimostrazione. di ciò a cui James e Brian si riferiscono. L'STBC usa 'JavaCompiler' /' SimpleJavaFileObject'. –