[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 ... · · · ---------------------------- · · · ---------------------------- · · ·