У меня есть настраиваемая структура безопасности, основанная на аннотациях. Я использую плагин для аспектов maven, чтобы сплести аспект, когда он сталкивается с аннотацией безопасности для метода.
Я использую jenkins для сборки проекта, а цели плагина aspectj maven устанавливаются для компиляции, как указано ниже.
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>aspectj-maven-plugin</artifactId>
<version>1.4</version>
<dependencies>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjrt</artifactId>
<version>1.6.5</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjtools</artifactId>
<version>1.6.5</version>
</dependency>
</dependencies>
<configuration>
<showWeaveInfo>true</showWeaveInfo>
<complianceLevel>1.6</complianceLevel>
<!-- <weaveDirectories> <weaveDirectory>${project.build.directory}/classes</weaveDirectory>
</weaveDirectories> -->
</configuration>
<executions>
<execution>
<!-- Compile and weave aspects after all classes compiled by javac -->
<phase>process-classes</phase>
<goals>
<goal>compile</goal>
</goals>
</execution>
</executions>
</plugin>
Проблема возникает, когда запускается junit. Поскольку он уже вплел аннотации, связанные с безопасностью, в методы, модульный тест не работает.
Есть ли способ, с помощью которого я могу заставить работать юниты, а затем выполнять аспектное плетение? Поскольку я использую файл .aj отдельно, я не уверен, как можно установить переплетение времени загрузки.
Любая помощь в этом приветствуется.
С уважением