eclipse-aspectj / aspectj

Other
303 stars 86 forks source link

Incremental compilation between two invocations #143

Open abelom opened 2 years ago

abelom commented 2 years ago

At the moment AJC incremental compilation means "incremental re-compilation within same JVM process" but for the huge codebase at my day job we need "incremental compilation between two different gradle invocations"

There is a complex state object that is produced by the first ‘full build’ (so you always get a first full build when you open the IDE) but after that the state object is used to do minimal builds for any changes you make.(the state object could be persisted on disk but that code hasn’t been written…).

https://www.eclipse.org/lists/aspectj-dev/msg03313.html

abelom commented 2 years ago

I guess there are two ways to accomplish the result - either have AJC to persist state or have gradle daemon keep AJC instance within daemon to reuse the in-memory state at least between dev desktop reboots?

aclement commented 2 years ago

In addition to that message you reference, some of my findings from attempting this before are here. Our state is more complex than JDTs, obviously.