2013-10-24 44 views
7

我目前正在使用第三方库提供的注释,我想知道是否有办法在它周围创建另一个'包装注释',这样我就不需要所有的参数。创建Java注释包装

例如,我可以使用图书馆的注释是这样的:

@LibraryAnnotation(Parameter1, Parameter2, Parameter3) 

但在我的情况下,参数2和参数3都是一样的,所以我想创建一个注解,只需要在参数1

@MyAnnotation(Parameter1) 

但会用所有参数调用其他注释,类似于您可能为第三方方法创建包装的方式。

回答

1

注释非常有限。不幸的是,我没有看到方法,但我可能是错的。

+0

标记你的答案,因为我还没有找到一种方法来做到这一点。我不认为这是可能的。 – user1751547

0

据我所知,目前可以用来做这两个选项:

  • 使用Daileon工具(http://daileon.sourceforge.net/) - 因为它更多的是一个实验性的工具,其实用性是有点繁琐
  • 使用面向方面编程和类型间声明注入了新的注释,如:

    declare @type : @MyAnnotation package.* : @LibraryAnnotation(..);

但是,这两个选项都非常有限。

0

您可以标注与基地注释您的注释这样的样品中:

@Target(value = {ElementType.TYPE}) 
@Page(method3="someValue") 
public @interface Move { 
String method1(); 
String method2(); 
} 

@Target(value = {ElementType.ANNOTATION_TYPE}) 
public @interface Page{ 
String method3(); 
}