Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [aspectj-users] Error building project with Eclipse+AJDT 1.5.2

Hi Andy,
thanks a lot for the answer, we will probably change the case study to a
better implemented application than azureus 2.

Cheers
Walter

On Tue, 22 Jul 2008, Andy Clement wrote:

Hi Walter,

2008/7/22 Walter Cazzola <cazzola@xxxxxxxxxxxxx>:

Hi Andy,
thanks a lot for the answer

On Mon, 21 Jul 2008, Andy Clement wrote:

  There is a 64k size limit for methods in Java.  Sometimes if an
 already large method contains many join points that match then during
 weaving the size will grow past 64k.  AspectJ does not do any
 splitting of the woven code into multiple methods in this case but
 just reports that it cannot weave that method.


We was imaging something like this. Is there a way to work around this
problem?


Only the workarounds you might imagine, there is no magic solution:
- use withincode() to avoid weaving the method that will get too large with
your general aspect and write specific advice for relevant join points
within it.
- use execution() matching advice rather than call() which might advise
fewer places
- turn off advice inlining if using around advice, to reduce code inserted
into advised methods
- don't use non-static information available at the join point since that
must be packaged up and passed to the advice every time



We are going to weave our aspects on third part applications and we
don't want to refactor their code since our aspects have the intent to
determine what can be extracted and encapsulated in aspects (aspect
mining) but this sounds as a recursive problem.


The correct solution is breaking the advised method into pieces when it gets
too large, but so far it happens infrequently enough that fixing it hasn't
become a priority for us I'm afraid.  In fact I don't even think we have an
open bug request to address it - feel free to raise one but I'm not sure
we'll get to it soon.

cheers,
Andy.





Cheers
Walter

--
Walter Cazzola, PhD - Assistant Professor, DICo, University of Milano
E-mail cazzola@xxxxxxxxxxxxx Ph.: +39 02 503 16300  Fax: +39 02 503 16100
· · · ---------------------------- · · · ---------------------------- · · ·
              ... recursive: adjective, see recursive ...
· · · ---------------------------- · · · ---------------------------- · · ·
_______________________________________________
aspectj-users mailing list
aspectj-users@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/aspectj-users




--
Walter Cazzola, PhD - Assistant Professor, DICo, University of Milano
E-mail cazzola@xxxxxxxxxxxxx Ph.: +39 02 503 16300  Fax: +39 02 503 16100
· · · ---------------------------- · · · ---------------------------- · · ·
               ... recursive: adjective, see recursive ...
· · · ---------------------------- · · · ---------------------------- · · ·

Back to the top