问题标签 [aspectj-maven-plugin]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 单元测试编译时编织
我正在使用aspectj maven 插件在编译时编织 Aspects。当我运行应用程序时,带有@Advice
注释的类在第一次调用通知之前被实例化。例如:
如果我有一个使用@Timed
注释的方法,则第一次调用该方法时将打印“创建 MyAdviceClass”,并且每次都会打印“调用的定时注释”。
我想通过模拟一些组件来对建议的功能进行单元测试,MyAdviceClass
但是不能这样做,因为MyAdviceClass
它是由 AspectJ 及时实例化的,而不是通过 Spring Beans。
像这样进行单元测试的最佳实践方法是什么?
java - 在 Maven 编译项目中使用 Spring AOP 得到“无工厂方法'aspectOf()'”发现异常
我继承了一个使用 Spring AOP 的 webapps 代码库。Maven用于编译它,运行在Tomcat 6.x服务器上。我已经尝试通过 Eclipse 的“运行方式”运行项目,也可以mvn clean install
在命令行上运行,然后更新 tomcatwebapps
文件夹。两者都曾经给我同样的例外。
SEVERE: Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'com.xyz.ABCAspect#0' defined in ServletContext resource [/WEB-INF/rest-servlet.xml]: No matching factory method found: factory method 'aspectOf()'. Check that a method with the specified name exists and that it is static.
我对 Spring AOP 很陌生,实际上是一般的 AOP。经过一些研究,当我通过 Eclipse 通过将项目转换为项目来运行服务器时,我能够解决这个问题AspectJ
。这样做后,我不再收到这些错误。
这对我来说似乎很神奇。而且由于我在进行手动编译/部署时仍然面临同样的问题,我希望能够归零并解决这个问题。
这是我的片段WEB-INF/rest-servlet.xml
这是我的ABCAspect
:
这是我的片段pom.xml
:
让我感到困惑的是,在我宣布我的项目是AspectJ
自然之后发生了什么如此神奇的事情?那个日食停止了抱怨。
任何指针表示赞赏。
spring - 最佳@EnableTransactionManagement 配置
我对这个主题很困惑,并且在 Spring 4.x 文档中看到的建议很少。首先让我声明我可以以任何我想要的方式配置我的项目。静态编织,编译时编织,无等。
我只想要最佳性能。但是,如果性能差异是微秒,那么我只想要最简单的。我只关心会影响我的客户的性能差异。
好的,以下是相关选项:
- 建议模式=代理,代理目标类=真
- 建议模式=代理,代理目标类=假
- adviceMode=aspectJ,编译时编织
- adviceMode=aspectJ,加载时编织
我可以为我的应用程序初始化增加一些时间,只要它在运行时速度很快。
那么这四种配置事务管理的方式有哪些取舍呢?
是否也有功能权衡,或者这只是一个性能问题?
请注意,我使用的是 Spring 4.0.2 和 Java 1.7。如果有基本上回答了这个问题的 Spring 4.0 文档,那么我道歉并将我重定向到文档。到目前为止,我已经看到文档说明了如何设置它们,但没有说明它们如何比较。谢谢!
另请注意,网络上有关此的大多数信息确实已过时。所以我正在寻找当前的比较。
android - 如何在 Android Studio 中配置 AspectJ?
我想在我的 android 项目中使用 .aj 文件,它在 Eclipse 中运行良好。但是如何让它在 Android Studio 中工作呢?我尝试了 Aspectj weaver 插件,但似乎无法将这些方面应用于项目。
java - aspectj-maven-plugin,声明软如何编译
declare soft: Exception : execution(* *.*());
是否可以仅使用 aspectj-maven-plugin编译具有软化异常(例如:)方面的项目?我无法处理...我仍然收到编译错误
所以它是在不考虑方面的情况下编译的。
我正在使用此命令进行编译:
我的 pom.xml 是:
我究竟做错了什么?
java - 如何使 aspectj-maven-plugin 在警告中包含文件名和行号
我通过它在 Java8 项目中的插件使用 AspectJ,在我的 pom.xml 文件中使用此配置:
我收到一些警告,如下所示:
但是它们没有用,因为缺少文件/行信息。我认为我没有使用任何关于 Maven 日志记录格式的特殊自定义,这可能会吞噬我感兴趣的上下文。这是默认的 ajc 日志记录吗?可以定制吗?
java - 多 Maven 项目的 Spring AOP 问题
嗨,我正在使用 POM 中带有模块的多 maven spring 项目
- Bhoomi 域-it
- Bhoomi-数据-它
- 布米域
- 布米数据
- Bhoomi 演示文稿
- Bhoomi-整合-消费者
- Bhoomi-集成提供商
与个人pom.xml
我在包含的Bhoomi-presentation
模块中 创建了一个 LoggerAspect 类
问题是当我正在构建项目(Bhoomi-presentation-0.1.0.BUILD-SNAPSHOT.war)时,它只记录 Bhoomi-presentation 模块中存在的类文件的日志,而不是其他模块的日志
所有其他模块在 WAR 的 lib 中以 jar 的形式出现
如果我忘记了任何配置,请告诉我,以便我可以记录所有项目日志
java - Maven 不编织 aspectj 代码
我在使用 maven 在 eclipse 中构建方面项目时遇到问题。当我通过 eclipse "Run As > Maven build" 运行 maven 时,我收到以下消息:<...>/Clazz.java:[5,32] 错误:找不到符号。所以,看起来 aspectj 并没有通过 maven 编织代码。
我提炼了这个问题,直到有一个类和一个在提到的类中定义一个类型间属性的方面,如下所示:
pom.xml 看起来像这样:
java - maven aspectJ插件编译错误
我在一个 Maven 项目中使用 maven-aspectJ 插件。我想编织 cucumber-java 库。当我运行 Maven 时,我不断得到
我的插件配置如下:
我检查了 pom.xml 并且依赖项在那里。我在这里想念什么?