반응형
AOP를 이용해보려고 @Aspect 어노테이션 방식을 사용해보려 했는데, 이렇게 빨간줄만 뜨고, 무엇을 import하면 좋을지 안내해주지도 않는다.
<!-- https://mvnrepository.com/artifact/org.aspectj/aspectjweaver -->
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>1.9.8</version>
<scope>runtime</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/org.aspectj/aspectjrt -->
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjrt</artifactId>
<version>1.9.8</version>
<scope>runtime</scope>
</dependency>
심지어 pom.xml에 depencies로 AOP 사용을 위한 aspectj도 모두 추가되어 있는 상태이다.
이럴 땐 <scope>runtime</scope>을 지워보자.
<!-- https://mvnrepository.com/artifact/org.aspectj/aspectjweaver -->
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>1.9.8</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.aspectj/aspectjrt -->
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjrt</artifactId>
<version>1.9.8</version>
</dependency>
지우고 나서 다시 마우스 커서를 위로 둬보면 import 패키지를 제시해준다.
그 이유는?
runtime을 사용함으로써 해당 패키지가 컴파일 시점에서는 제외되었기 때문이다.
반응형