Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
RE: [aspectj-users] Compiling only affected sources

> Why can't the regular compilation behave the same way and 
> copmile only whats necessary? 

"What's necessary" is not easy to define, given AspectJ's semantics 
(where an aspect or pointcut in a class) can affect other classes,
so it can't use Javac/javac's tricks for pruning up-to-date targets.
The in-process incremental support does it by keeping information
in memory.  

Incremental compiles are most useful in your IDE (your boss loves it
that you don't have time to get up for coffee during compiles).  Can
your IDE support it?  Perhaps borrowing code from AJDT, AJDE, or iajc?

Wes

------------Original Message------------
From: "Nitzan Volman" <nitzan@xxxxxxxxxxx>
To: "Wes Isberg" <wes@xxxxxxxxxxxxxx>, aspectj-users@xxxxxxxxxxx
Date: Thu, May-26-2005 0:35 AM
Subject: RE: [aspectj-users] Compiling only affected sources
Thanks Wes.

I will use this option. 
Why can't the regular compilation behave the same way and copmile only whats necessary? this way is much more compilcated to use...


/Nitzan




-----Original Message-----
From: aspectj-users-bounces@xxxxxxxxxxx [mailto:aspectj-users-bounces@xxxxxxxxxxx] On Behalf Of Wes Isberg
Sent: Wednesday, May 25, 2005 6:02 PM
To: aspectj-users@xxxxxxxxxxx
Subject: Re: [aspectj-users] Compiling only affected sources


You can do incremental compilation from the command line using the keyboard
or from Ant/iajc using a "tag file" which triggers a recompile when it changes:

i.e.,
- define tag file "recompile.txt"
- start Ant/iajc incremental compile
  (initial compile, classes produced; process waits)
- make changes to .java files
- when ready to recompile, touch recompile.txt
  (touch: edit, save)
- Ant/iajc process recompiles only what's necessary

iterate...

Wes

------------Original Message------------
From: "Nitzan Volman" <nitzan@xxxxxxxxxxx>
To: aspectj-users@xxxxxxxxxxx
Date: Wed, May-25-2005 7:47 AM
Subject: [aspectj-users] Compiling only affected sources
Hi,
I am using AspectJ 5 M2 (iajc) to compile a rather large project (~1500 classes).
In a typical scenario a developer will make a minor change to a class or two - often a class that does not have any pointcuts caught by aspects in the projects.
Hit the "Ant run" button, and go have a cup of coffee since the entire project is recompiled. (we do have great coffee :) )
Upon returning he might discover that he misplaced a semi-colon and will repeat the process: "Ant Run" ==> go get Coffee.  (Mental note: Switch to decaf  )
I realize that the aspectJ compiler needs to process all the input since changed aspects might affect new files, 
Is there a way to speed up the compilation process anyway? 
In my case, which is quite typical, most of the classes should not be recompiled even when aspects ARE changed….
The Compiler should have two stages: 
The first, find out which classes should be recompiled. The second stage should recompile only those classes.
The goal should be a very quick compilation when only a few classes changed…
Is this possible today?
thanks
/Nitzan Volman



_______________________________________________ 
aspectj-users mailing list 
aspectj-users@xxxxxxxxxxx 
https://dev.eclipse.org/mailman/listinfo/aspectj-users 

_______________________________________________ 
aspectj-users mailing list 
aspectj-users@xxxxxxxxxxx 
https://dev.eclipse.org/mailman/listinfo/aspectj-users 



Back to the top