Więc druga odpowiedź jest również ważne, ale myślałem, że pokrycie w nieco bardziej szczegółowo niektóre z konsekwencji takiego podejścia.
Konfiguracja używam jest na poziomie podstawowym to: -
<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>${aspectj.version}</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjtools</artifactId>
<version>${aspectj.version}</version>
</dependency>
</dependencies>
<configuration>
<outxmlfile>META-INF/aop.xml</outxmlfile>
<aspectLibraries>
<aspectLibrary>
<groupId>org.springframework</groupId>
<artifactId>spring-aspects</artifactId>
</aspectLibrary>
</aspectLibraries>
<source>1.7</source>
<target>1.7</target>
<forceAjcCompile>true</forceAjcCompile>
</configuration>
</plugin>
Teraz kilka dodatkowych informacji o zależnościach: -
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
<version>${dep.spring}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aspects</artifactId>
<version>${dep.spring}</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjrt</artifactId>
<version>${aspectj.version}</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>${aspectj.version}</version>
</dependency>
<dependency>
<groupId>javax.persistence</groupId>
<artifactId>persistence-api</artifactId>
<version>1.0</version>
<scope>provided</scope>
</dependency>
Przypuszczam, że przegapisz API trwałości, która służy do tkania.
Edytowanie: związane z https://jira.springsource.org/browse/SPR-6819 błędów na wiosnę. Wydaje się, że potrzebujesz interfejsu API trwałości.
Pomocne może być również stworzenie sprytnego zadania, jeśli klasy rozplątają się w idei (to dużo dla mnie).
aspectj:compile
Wreszcie, jeśli zamierzają jednostki przetestować swoje zajęcia, może być przydatna do tkania klas po tej fazie. Tkamy w fazie prepare-package
. Jeśli chcesz to zrobić, dodaj:
<executions>
<execution>
<phase>prepare-package</phase>
<goals>
<goal>compile</goal>
</goals>
</execution>
</executions>
Do twojej wtyczki.
Mam nadzieję, że pomaga, ponieważ może być trudno uzyskać to podejście, aby grać dobrze w IDE.
Eclipse lub IntelliJ lub inny? –
Używam Eclipse IDE – maks