| The way I understand it that enabling the agent is not enough, you also need the aop.xml file as well. On Sep 6, 2008, at 3:19 PM, Neo Anderson wrote:   I specify the agent on the step 4 where there includes '-javaagent:/path/to/aspectj1.6/lib/aspectjweaver.jar'  as stated in the configuration page., unless I misunderstand its meaning (.If so, please tell me the right format.)
 Thank you very much,
 
 
 --- On Sat, 6/9/08, Ron DiFrango <rdifrango@xxxxxxxxxxxxxxxxxxx> wrote:
 
 > From: Ron DiFrango <rdifrango@xxxxxxxxxxxxxxxxxxx>
 > Subject: RE: [aspectj-users] Load time weaving problem
 > To: javadeveloper999@xxxxxxxxxxx, aspectj-users@xxxxxxxxxxx, aspectj-users@xxxxxxxxxxx
 > Date: Saturday, 6 September, 2008, 6:36 PM
 > I am not LTW expert, but do you have an aop.xml file defined
 > and on the classpath like the documentation says here:
 >
 > http://www.eclipse.org/aspectj/doc/released/devguide/ltw-configuration.html
 >
 > If so, maybe supplying that as well would help.
 >
 > Ron DiFrango
 > Manager / Architect
 > Cap Tech Ventures, Inc (http://www.captechventures.com)
 > Blog (http://www.captech-soa.blogspot.com)
 > Cell: 804-855-9196
 > Work: 804-545-8742
 >
 >
 >
 > -----Original Message-----
 > From: aspectj-users-bounces@xxxxxxxxxxx on behalf of Neo
 > Anderson
 > Sent: Sat 9/6/2008 1:58 PM
 > To: aspectj-users@xxxxxxxxxxx
 > Subject: Re: [aspectj-users] Load time weaving problem
 >
 > I fix that problem, but I still can not run load-time
 > weaving. There is no error, it only produces result as there
 > is no weaving at all.
 >
 > The step to run the example is
 >
 > 1.) javac -classpath ./ character/Person.java
 >
 > 2.) ajc observer/Inspector.aj
 >
 > 3.) ajc -outjar ./lib/inspect.jar observer/Inspector.aj
 >
 > warning at this step:
 >
 > Inspector.aj:4 [warning] no match for this type name:
 > character.Person [Xlint:invalidAbsoluteTypeName]
 > pointcut observer(): execution(*
 > character.Person.speak(..)); // && this(Person);
 >                                  ^^^^^^^^^^^^^^^^^^^^
 >         [Xlint:invalidAbsoluteTypeName]
 >
 >
 > 4.) export
 > ASPECTPATH=./lib/inspect.jar:$ASPECTJ_HOME/lib/aspectjrt.jar
 >
 > 5.) aj
 > -javaagent:/home/neo/app/aspectj1.6/lib/aspectjweaver.jar
 > -cp ./ character.Person
 >
 > what might go wrong?
 >
 > Thanks in advice,
 >
 > The source now is as below:
 >
 > package character;
 >
 > public class Person{
 >         private String name;
 >
 >         public Person(String name){
 >                 this.name = name;
 >         }
 >
 >         public String getName(){
 >                 return this.name;
 >         }
 >         public void setName(String name){
 >                 this.name = name;
 >         }
 >
 >         public void speak(String sentence){
 >                 System.out.println(this.name+" say :
 > '"+sentence+"'");
 >         }
 >
 >         public static void main(String args[]){
 >                 new
 > Person("Jason").speak("This is a
 > book!");
 >         }
 >
 > }
 >
 > package observer;
 >
 > public aspect Inspector{
 >         pointcut observer(): execution(*
 > character.Person.speak(..)); // && this(Person);
 >
 >         before(): observer(){
 >                 System.out.println("before speaking
 > something, thinking ...");
 >         }
 > }
 >
 >
 >
 > --- On Sat, 6/9/08, Andrew Eisenberg
 > <andrew@xxxxxxxxxxxx> wrote:
 >
 > > From: Andrew Eisenberg <andrew@xxxxxxxxxxxx>
 > > Subject: Re: [aspectj-users] Load time weaving problem
 > > To: javadeveloper999@xxxxxxxxxxx,
 > aspectj-users@xxxxxxxxxxx
 > > Date: Saturday, 6 September, 2008, 4:48 PM
 > > When using LTW, the first step is to ensure that your
 > > pointcuts are
 > > applying to the correct joinpoints.  Unfortunately,
 > AJDT
 > > doesn't help
 > > much with this.
 > >
 > > My suggestion to you is to turn off LTW and try to get
 > the
 > > program
 > > working using standard compile time weaving.
 > You'll
 > > find that your
 > > pointcut isn't correct.
 > >
 > > If you can't figure it ask again and I'll tell
 > you
 > > how to fix your pointcut.
 > >
 > > On Sat, Sep 6, 2008 at 7:41 AM, Neo Anderson
 > > <javadeveloper999@xxxxxxxxxxx> wrote:
 > > > I am learning to use load-time weaving features
 > > provided by aspectj, but I can not get my example
 > worked
 > > whilst running it.  The problem is that the load-time
 > > weaving seems not work.
 > > >
 > > > There are two classes named character/Person.java
 > and
 > > observer/Inspector.aj (source is as listed ) .
 > > >
 > > > The way how I compile it is
 > > > 1.) compile Person.java
 > > >  javac -classpath ./ character/Person.java
 > > > 2.) compile aspectj source
 > > >  ajc -1.6  observer/Inspector.aj  (This step
 > issues
 > > warning which oreilly's aspectj cookbook says it
 > is ok)
 > > >
 > > > [warning] no match for this type name: Person
 > > [Xlint:invalidAbsoluteTypeName]
 > > > pointcut observer(): execution(* speak(..))
 > &&
 > > this(Person);
 > > >
 >
 > > ^^^^
 > > >        [Xlint:invalidAbsoluteTypeName]
 > > >
 > >
 > /home/neo/workspace/coding/aspectj/load-time-weaving/observer/Inspector.aj:6
 > > [warning] advice defined in observer.Inspector has not
 > been
 > > applied [Xlint:adviceDidNotMatch]
 > > >
 > > > 3.)  produce outjar and export it in ASPECTPATH
 > > > ajc -outjar lib/inspector.jar
 > observer/Inspector.aj
 > > > export ASPECTPATH=./lib/inspect.jar
 > > >
 > > > 4.) run example
 > > > aj -javaagent:$ASPECTJ_HOME/lib/aspectjweaver.jar
 > -cp
 > > ./ character.Person
 > > >
 >
 > > > The result only shows "Jason speak : This is
 > a
 > > book!" without weaving.
 > > >
 > > > What I expect is
 > > > stage before speaking something!
 > > > Jason speak : This is a book!
 > > >
 > > > Where did I do it wrong?
 > > >
 > > > My env: aspectj1.6/ open suse 11.0 64bit/kernel
 > > 2.6.25-1.1-default/ jdk1.6.x
 > > >
 > > > I appreciate any advice,
 > > >
 > > > Thank you very much
 > > >
 > > > The source is as below:
 > > >
 > > > package character;
 > > >
 > > > public class Person{
 > > >        private String name;
 > > >
 > > >        public Person(String name){
 > > >                this.name = name;
 > > >        }
 > > >
 > > >        public String getName(){
 > > >                return this.name;
 > > >        }
 > > >        public void setName(String name){
 > > >                this.name = name;
 > > >        }
 > > >
 > > >        public void speak(String sentence){
 > > >
 > System.out.println(this.name+"
 > > speak : "+sentence);
 > > >        }
 > > >
 > > >        public static void main(String args[]){
 > > >                new
 > > Person("Jason").speak("This is a
 > > book!");
 > > >        }
 > > > }
 > > >
 > > > package observer;
 > > >
 > > > public aspect Inspector{
 > > >        pointcut observer(): execution(*
 > speak(..))
 > > && this(Person);
 > > >
 > > >        before(): observer(){
 > > >                System.out.println("stage
 > before
 > > speaking something!");
 > > >        }
 > > > }
 > > >
 > > >
 > > >
 > > >
 > > >
 > > >
 > > > _______________________________________________
 > > > 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
 
 
 
 
 |