【发布时间】:2019-05-10 15:00:27
【问题描述】:
我正在试验 Spring Boot 2 和 AspectJ Load Time Weaving。 我能够从 Eclipse 运行测试和应用程序(向 VM 添加两个代理:aspectjweaver 和 spring-instrument),来自 Maven 的surefire 也运行良好,但是我无法向 spring-boot-maven-plugin 添加两个代理。
这是我的 pom.xml sn-p
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<argLine>
-javaagent:"${settings.localRepository}/org/aspectj/aspectjweaver/${aspectj.version}/aspectjweaver-${aspectj.version}.jar"
-javaagent:"${settings.localRepository}/org/springframework/spring-instrument/${spring.version}/spring-instrument-${spring.version}.jar"
-Dspring.profiles.active=test</argLine>
</configuration>
</plugin>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<agent>
${settings.localRepository}/org/aspectj/aspectjweaver/${aspectj.version}/aspectjweaver-${aspectj.version}.jar
</agent>
<agent>
${settings.localRepository}/org/springframework/spring-instrument/${spring.version}/spring-instrument-${spring.version}.jar
</agent>
</configuration>
</plugin>
看起来 spring-boot-maven-plugin 仅将 spring-instrument 附加到 VM。 (实际上,总是 pom 的最后一个“代理”条目。
任何人有一个想法,如何让它工作?
我正在使用 Java 8、Spring Boot 2.1.0.RELEASE(AspectJ 1.9.2 和 Spring 5.1.2.RELEASE)。
【问题讨论】:
标签: spring-boot aspectj spring-boot-maven-plugin load-time-weaving