【发布时间】:2014-07-07 08:31:03
【问题描述】:
我已经搜索了一段时间,但是我找不到任何关于如何在 Java EE 中实现定义自定义注释(拦截器绑定)以便能够在多个 maven 模块中使用而无需在每个包中声明的信息我想在哪里使用它。它是一个基本的拦截器,实现只在控制台中打印一些东西。
一个例子就像javax.ws.rs.Path,这个注解可以在多个位置使用,它需要做的就是导入正确的依赖。我的注释无法达到同样的效果。
我使用拦截器和绑定注释创建了新的 maven 模块。我在 META-INF 文件夹中也有 beans.xml 文件来启用 CDI。然后我将此模块的依赖项添加到我想使用此注释的其他项目中。问题是,当我想使用这个注解时,注解的实现不会执行使用@AroundInvoke 注解的方法。
我不知道我在做什么错,因为 Weld 应该开始初始化 bean 实现,因为 CDI 已启用,但他没有,除非我在 beans.xml 文件中我想要的地方为 <interceptor> 额外配置使用注释。
【问题讨论】:
-
你的问题不是很清楚。 maven 包是什么意思?
-
你应该首先提到这是关于焊接的:) 所以你的共享模块中有一个
beans.xml,但你不希望在你的主(使用)模块中有一个,对吧?
标签: java maven annotations cdi weld