Atualizar codigo java através de API

Olá a tod@s, bom dia!

Estou trabalhando em um projeto onde, através da modelagem de objetos, realizo a geração de código-fonte dos mesmos. Para novos objetos, estou usando o JCodeModel e está tudo rodando blzinha. Porém, há determinados objetos que já estão criados (ex. criação de um atributo novo, um método novo, etc), sendo então necessário ajustar a implementação dos mesmos pelo gerador (ao invés de regerá-lo todo - corro o risco de sobrescrever alguma implementação pós-geração). Aí vem a pergunta:

Há alguma API ou mecanismo onde eu consiga carregar o código-fonte e atualizá-lo em nível de programação?

Obrigado!

Rodrigo

E ai, alguma luz? (Desculpe-me por reavivar o tópico, mas estou precisando mesmo de algum rumo)

Acho que vc só tem duas alternativas, aprender a usar uma ferramenta que ninguem usa, ou aprender a fazer sem essa ferramenta.
Geração de codigo a partir de modelos é uma ideia que nunca se provou util para projetos sérios. Não entendo porque vc está usando isso.
Tenho dúvidas se alguém saberá ajudá-lo.

Você precisaria de alguma ferramenta de geração de código que suportasse “roundtrip code generation”.

É que o seu principal problema é não jogar fora a implementação que você já fez manualmente.

Por isso, deveria haver na sua ferramenta alguma forma de anotar o código que você escreveu manualmente para que ele fosse recarregado e copiado para o código gerado.

Outra forma, que é um bocado tosca (e que é o principal motivo para o C# suportar isso, num recurso chamado de “classes parciais” ) é separar a parte de implementação (ou seja, é o que você escreveu) da parte de interface (que é a parte gerada do seu código).

Infelizmente ignoro que ferramentas Java suportam isso (“roundtrip code generation”).

Veja se lendo o código-fonte do plugin WindowBuilder do Eclipse você chega a um acordo.

Acredito que o WindowBuilder use alguma API do Eclipse que leia o código original (se não me engano, existe um conjunto imenso de APIs do Eclipse só para isso), o transforme em uma AST (Abstract Syntax Tree), e gere um novo programa (incluindo suas modificações) através da modificação da AST e subsequente geração do código correspondente, mas isso é trabalho para você resolver.