我正在试验Spring Boot 2和AspectJ Load Time Weaving . 我可以从Eclipse运行测试和应用程序(将两个代理程序:aspectjweaver和spring-instrument添加到VM),来自Maven的surefire也运行正常,但是我无法将两个代理添加到spring-boot-maven-plugin .

这是我的pom.xml片段

<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) .