Seems a little odd it is saying it is weaving into Spring classes: " when weaving type org.springframework.web.servlet.view.document. AbstractPdfView"
Are you somehow passing in more than the application? I don't speak maven so can't comment directly on the pom contents. You could include a within() clause in your pointcut to limit it to the packages you really know contain the calls then it won't be looking at all the calls made everywhere. cheers, Andy On 14 November 2013 19:58, Eric B <[email protected]> wrote: > I've got a Spring-MVC 3.2.4 mavenized project, where I've run into the > need to weave an Aspect into a Spring-MVC class. I'm able to run the > aspect and the webapp through Eclipse without any problems (Tomcat), but > when I try to package the war from the command line, AspectJ throws a whole > bunch of weaving errors: > > mvn compile > ... > ... > [ERROR] can't determine superclass of missing type > com.lowagie.text.Document > when weaving type > org.springframework.web.servlet.view.document.AbstractPdfView > when weaving classes > when weaving > when batch building BuildConfig[null] #Files=75 AopXmls=#0 > [Xlint:cantFindType] > [ERROR] can't determine superclass of missing type > com.lowagie.text.Document > when weaving type > org.springframework.web.servlet.view.document.AbstractPdfView > when weaving classes > when weaving > when batch building BuildConfig[null] #Files=75 AopXmls=#0 > [Xlint:cantFindType] > ... > ... > ... > > I have no com.lowagie.text.* dependencies listed in my pom, as I am not > using and PDF stuff. What I don't understand is why AspectJ can properly > weave the class when running through Eclipse, but not when I try to compile > it from the command line. > > > pom.xml (relevant snippets - using aspectJ 1.7.3): > > <dependency> > <groupId>org.aspectj</groupId> > <artifactId>aspectjrt</artifactId> > <version>${aspectj.version}</version> > </dependency> > <dependency> > <groupId>org.aspectj</groupId> > <artifactId>aspectjweaver</artifactId> > <version>${aspectj.version}</version> > </dependency> > > .... > .... > > <plugin> > <groupId>org.codehaus.mojo</groupId> > <artifactId>aspectj-maven-plugin</artifactId> > <version>1.2</version> > <!-- NB: do not use 1.3 or 1.3.x due to MASPECTJ-90 and do not use 1.4 > due to declare parents issue --> > <dependencies> > <!-- NB: You must use Maven 2.0.9 or above or these are ignored (see > MNG-2972) --> > <dependency> > <groupId>org.aspectj</groupId> > <artifactId>aspectjrt</artifactId> > <version>${aspectj.version}</version> > </dependency> > <dependency> > <groupId>org.aspectj</groupId> > <artifactId>aspectjtools</artifactId> > <version>${aspectj.version}</version> > </dependency> > </dependencies> > <executions> > <execution> > <goals> > <goal>compile</goal> > <goal>test-compile</goal> > </goals> > </execution> > </executions> > <configuration> > <outxml>true</outxml> > <aspectLibraries> > <aspectLibrary> > <groupId>org.springframework</groupId> > <artifactId>spring-aspects</artifactId> > </aspectLibrary> > </aspectLibraries> > <weaveDependencies> > <weaveDependency> > <groupId>org.springframework</groupId> > <artifactId>spring-webmvc</artifactId> > </weaveDependency> > </weaveDependencies> > <source>${java.version}</source> > <target>${java.version}</target> > </configuration> > </plugin> > > > > The Aspect declaraion: > > @Aspect > public class OptionsPatch { > @Pointcut("call( * > org.springframework..SpringWildcardServletTilesApplicationContext.getResources(..)) > && if()") > public static boolean getResources(JoinPoint.EnclosingStaticPart esp) > { > if( /* some condition here */ ) > return true; > else > return false; > } > > > @Around("getResources(enc)") > public Object unboxIOException(ProceedingJoinPoint pjp, > JoinPoint.EnclosingStaticPart enc) throws Throwable { > try { > return pjp.proceed(); > } catch (IllegalArgumentException e) { > throw e; > } > } > } > > > > Do I have to write the pointcut in a more precise manner to avoid this > problem? Why does it work within the editor but not from the cmd line? > > > Thanks, > > Eric > > _______________________________________________ > aspectj-users mailing list > [email protected] > https://dev.eclipse.org/mailman/listinfo/aspectj-users > >
_______________________________________________ aspectj-users mailing list [email protected] https://dev.eclipse.org/mailman/listinfo/aspectj-users
