主要问题似乎是您正在将方面应用于bean:
Post-processor tried to replace bean instance of type [com.test.server.graph.domain.model.Sequence] with (proxy) object of type [org.springframework.beans.factory.aspectj.$Proxy96] - not supported for aspect-configured classes!
这是行不通的,因此您必须确保模型类是真实的POJO,而不是bean,并将它们从spring中排除。(确保在domain.model。*中没有spring注释)-也许如果您发布Sequence.java,我可以看到可能引起冲突的原因。
另一方面,您必须确保Aspectj仅分配给模型,而不分配给任何bean。因此,请确保您有一个/meta-INF/aop.xml仅包含pojo模型:
<!DOCTYPE aspectj PUBLIC "-//AspectJ//DTD//EN" "http://www.eclipse.org/aspectj/dtd/aspectj.dtd"> <aspectj> <weaver> <!-- only weave classes in our application-specific packages --> <include within="com.test.server.graph.domain.model.*" /> </weaver> <aspects> <!-- weave in just this aspect --> <aspect name="my.util.aspects.Neo4jFetchAspect" /> </aspects> </aspectj>
我的pom.xml的一部分(我现在有一个不同的设置-这就是为什么spring版本这么旧的原因):
<dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjrt</artifactId> <version>1.6.12</version> </dependency> <dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjweaver</artifactId> <version>1.6.12</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-aspects</artifactId> <version>3.1.1.RELEASE</version> </dependency>
我没有任何特殊的构建插件或类似的插件



