If imported as a maven project the AJDT Configurator should kick in and 
configure the project correctly. Look in the project properties > builders, is 
it using AspectJ to build?

You can configure the AspectJ compiler properties to show eclipse info message 
for AspectJ weave info messages. That should tell you if it is actually 
weaving. Not sure why you need to run the ‘mvn clean compile’ in eclipse if the 
correct builder is building the project for you.  Maybe I’d like at where the 
output files are going, all to the right output folder?  If you are compile 
time weaving and not loadtime weaving running the tests should be just like for 
any other java project.

cheers,
Andy

> On Sep 25, 2017, at 9:58 PM, Mikael Petterson <mikaelpetter...@hotmail.com> 
> wrote:
> 
> Hi Andy!
> 
> Yes now I got the message 😊
> 
> I have exactly the same code. I think it has something to do with the compile 
> and execution of my test case. I can see that ajc i done:
> 
> aspectj-maven-plugin:1.10:compile (compile_with_aspectj) @ resource-manager 
> ---
> [INFO] Showing AJC message detail for messages of types: [error, warning, 
> fail]
> [WARNING] invalid Class-Path header in manifest of jar file: 
> /repo/eraonel/.m2/repository/org/restlet/jse/org.restlet/2.3.3/org.restlet-2.3.3.jar
> invalid Class-Path header in manifest of jar file: 
> /repo/eraonel/.m2/repository/org/uncommons/maths/uncommons-maths/1.2.2a/uncommons-maths-1.2.2a.jar
>     <unknown source file>:<no line information>
> 
> [INFO] Join point 'method-call(......)
> 
> However when I try to execute my test case I try to do it within Eclipse.
> I have a 'Run configuration'  for m2build making:
> 
> mvn clean compile 
> 
> Then I have another 'Run configuration', testng,  for my Demo test.
> 
> I execute it using a suite file that I have pointed out in Eclipse.
> 
> Is there anything that is different if I execute from within Eclipse?
> 
> br,
> 
> //mikael
> 
> 
>  
>  
> 
> 
> Från: Andy Clement <andrew.clem...@gmail.com 
> <mailto:andrew.clem...@gmail.com>>
> Skickat: den 22 september 2017 16:52
> Till: Mikael Petterson
> Kopia: aspectj-users@eclipse.org <mailto:aspectj-users@eclipse.org>
> Ämne: Re: [aspectj-users] How to get the enclosing class in a Pointcut
>  
> Hey, hope you get this email :)
> 
> Here is a complete program:
> 
> ==== 8< ==== 8< ==== Demo.java =========
> public class Demo {
>   public static void main(String []argv) {
>     new Demo().test();
>   }
> 
>   public void test() {
>     Node node = new Node();
>     Handler handler = node.getObjectHandler();
>     //getBoards() is the deprecated method.
>     Boards boards = handler.getBoards();
>   }
> }
> 
> aspect X {
>   pointcut deprecatedMethods() : call(public * *(..)) && 
> @annotation(Deprecated);
>   before() : deprecatedMethods() {
>     System.out.println("Caller: 
> "+thisEnclosingJoinPointStaticPart.getSignature());
>     System.out.println("Called: "+thisJoinPoint.getSignature());
>   }
> }
> ==== 8< ==== 8< ==== Demo.java =========
> 
> ajc -1.8 Demo.java
> java Demo
> 
> Caller: void Demo.test()
> Called: Boards Handler.getBoards()
> 
> You could use a declare warning to achieve some of this but I don't think it 
> includes the enclosing join point as a key insert right now (see declare 
> warning in https://eclipse.org/aspectj/doc/released/README-169.html 
> <https://eclipse.org/aspectj/doc/released/README-169.html> ). Using declare 
> warning means you'd see the message at compile time and not runtime.
> AspectJ 1.6.9 Readme - Eclipse Oxygen 
> <https://eclipse.org/aspectj/doc/released/README-169.html>
> eclipse.org <http://eclipse.org/>
> It is now possible to ITD member types. The syntax is as would be expected. 
> This example introduces a new member type called Inner into type Foo: public 
> class Foo ...
> 
> cheers,
> Andy
> 
> On 22 September 2017 at 05:05, Mikael Petterson <mikaelpetter...@hotmail.com 
> <mailto:mikaelpetter...@hotmail.com>> wrote:
> Thx Any I really appreciated your help.
> 
> You where correct in your assumption:
> 
> "
> If you want to match calls *to* deprecated methods it would be more like:
> 
> call(public * *(..)) && @annotation(Deprecated)
> "
> 
> This is what I want to accomplish.
> 
> This is the structure of my maven project:
> 
> myapp
>   tests
>   nodes
> 
> In 'nodes' module I have a package called aspects where I have the aspect 
> DeprecatedMethodLogger.aj
> that I will 'weave' into the classes of nodes module.
> Under tests I have Demo class to trigger deprecated method call, getBoards(), 
> that is in nodes. This is for testing purposes. 
> Later on there will be calls not in myapp, but outside, that will make calls 
> to deprecated methods in nodes module.
> 
> Demo.java
> 
> public class Demo extends Test{
> 
>     @Test
>     public void test() {
>       Node node = new Node();
>       Handler handler = node.getObjectHandler();
>       //getBoards() is the deprecated method.
>       Boards boards = handler.getBoards();
>       
>  
>     }
> }
> 
> 
> DeprecatedMethodLogger.aj
> 
> pointcut deprecatedMethods() : call(public * *(..)) && 
> @annotation(Deprecated);
> 
> before() : deprecatedMethods() {
>        log("[Deprecated Method Usage]" 
> +thisEnclosingJoinPointStaticPart.getSignature().getDeclaringTypeName()+" --> 
> "+"\n");              
>     }
> 
> This will print the 'Handler' class that calls the method getBoards() which 
> is deprecated. I want:
> 
> Caller:  Demo.test()
> Called: Handler.getBoards()
> 
> What am I lacking?
> 
> br,
> 
> //mikael
> 
>  
>  
> 
> 
> Från: aspectj-users-boun...@eclipse.org 
> <mailto:aspectj-users-boun...@eclipse.org> <aspectj-users-boun...@eclipse.org 
> <mailto:aspectj-users-boun...@eclipse.org>> för Mikael Petterson 
> <mikaelpetter...@hotmail.com <mailto:mikaelpetter...@hotmail.com>>
> Skickat: den 21 september 2017 11:35
> Till: Frank Pavageau; aspectj-users@eclipse.org 
> <mailto:aspectj-users@eclipse.org>
> Ämne: Re: [aspectj-users] How to get the enclosing class in a Pointcut
>  
> Thx!
> 
> I got your reply but why did I not get his? Do I need to make any changes to 
> get them?
> 
> br,
> 
> //mike
> 
>  
>  
> 
> 
> Från: Frank Pavageau <frank.pavag...@gmail.com 
> <mailto:frank.pavag...@gmail.com>>
> Skickat: den 21 september 2017 07:54
> Till: aspectj-users@eclipse.org <mailto:aspectj-users@eclipse.org>; Mikael 
> Petterson
> Ämne: Re: [aspectj-users] How to get the enclosing class in a Pointcut
>  
> 2017-09-21 9:46 GMT+02:00 Mikael Petterson <mikaelpetter...@hotmail.com 
> <mailto:mikaelpetter...@hotmail.com>>:
> So no input on this one?
> Yes, Andy answered on the list itself : 
> https://dev.eclipse.org/mhonarc/lists/aspectj-users/msg15087.html 
> <https://dev.eclipse.org/mhonarc/lists/aspectj-users/msg15087.html>
> 
> Regards,
> Frank

_______________________________________________
aspectj-users mailing list
aspectj-users@eclipse.org
To change your delivery options, retrieve your password, or unsubscribe from 
this list, visit
https://dev.eclipse.org/mailman/listinfo/aspectj-users

Reply via email to