我想要完成的是以下内容:
我有一个具有以下结构的服务器。
斌 蜜蜂 服务 ETC...
我想定义一个 API,其中包含服务要使用的方面。说:
@Aspect
public class AuthorizationAspect {
@Pointcut("call(* *()) && @annotation(Authorization)")
public void cutAuthorize() { }
@Before("cutAuthorize()")
public void callFromAuthorizeBefore() {
System.out.println("Test");
}
}
然后我定义服务并使用@Authorization 注释我想要的方法,并通过该方面获得切入点。
你应该知道的事情:
- 服务仅使用 API 来编译代码,因此范围是“提供的”,因为 API 已经在服务器中。
- 服务 JAR 是动态加载的,因此它们将驻留在另一个类加载器中。
我的问题是,我该怎么做?我如何定义我的 Maven 工件来实现这一点?
我注意到 aspectj 插件有一个 weaveDependencies 部分,但这也会在服务 JAR 中包含该 API 中的所有类(我想避免的事情)。这是正确的举动吗?
提前致谢,
瑞