2014-09-12 70 views
1

我有一個自定義的Java註解像下面Java註解會員驗證上編譯

@customelement(folder = "/path/") 
public testMethod() { 

} 

我要驗證的文件夾路徑(「/路徑/」)的文件夾成員變量和報告java源內部錯誤。我該怎麼做?

+0

你想報告一個錯誤? – 2014-09-12 11:10:18

+0

編譯此類時 – Sandip 2014-09-12 11:11:28

+0

這是不可能的。抱歉! – 2014-09-12 11:11:57

回答

0

Java Annotation Element Method return

@Override 
    public boolean process(Set<? extends TypeElement> annotations, 
          RoundEnvironment roundEnv) { 
     Set<? extends Element> elements = roundEnv.getElementsAnnotatedWith(CustomAnnotation.class); 
     for(Element te : elements){ 
      CustomAnnotation annotation = te.getAnnotation(CustomAnnotation.class); 
      String folder = annotation.folder(); 
      //... do sth with folder in context of te. 
      //te represent annotated method, e.g. testMethod from your example 
     } 
     return true; 
    } 

還記得註釋與@SupportedAnnotationTypes您CompileTimeAnnotationProcessor( 「package.CustomAnnotation」)和@SupportedSourceVersion(SourceVersion.RELEASE_7)(或Java語法的任何版本,你要支持)。

如果還有其他問題,我建議閱讀這篇優秀的教程博文。