rpv*_*lao 6 java aspectj aspects maven
我想要完成的是以下内容:
我有一个具有以下结构的服务器.
bin apis services etc...
我想定义一个包含服务使用方面的API.说:
@Aspect
public class AuthorizationAspect {
@Pointcut("call(* *()) && @annotation(Authorization)")
public void cutAuthorize() { }
@Before("cutAuthorize()")
public void callFromAuthorizeBefore() {
System.out.println("Test");
}
}
Run Code Online (Sandbox Code Playgroud)
然后我定义服务并使用@Authorization注释我想要的方法,并通过该方面获得切入点.
你应该知道的事情:
我的问题是,我该怎么做?如何定义我的maven工件来实现这一目标?
我注意到aspectj插件有一个weaveDependencies部分,但是这也将在服务JAR中包含该API中的所有类(我想要避免的东西).这是正确的举动吗?
提前致谢,
瑞
看看它是如何在jcabi-aspects中完成的。您在 API 中声明/编译您的方面,然后使用此 JAR,就像我们com.jcabi:jcabi-aspects在示例中使用的那样:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>aspectj-maven-plugin</artifactId>
<configuration>
<aspectLibraries>
<aspectLibrary>
<groupId>com.jcabi</groupId>
<artifactId>jcabi-aspects</artifactId>
</aspectLibrary>
</aspectLibraries>
</configuration>
</plugin>
Run Code Online (Sandbox Code Playgroud)
provided将方面 JAR 放在( 或) 范围内是可以的runtime。
| 归档时间: |
|
| 查看次数: |
1276 次 |
| 最近记录: |