How to view annotation of java classfile via command line?

后端 未结 2 371
无人及你
无人及你 2020-12-14 16:41

Is there a command line tool, preferrably in the JDK, that either prints all annotations in a classfile or takes a specific annotation as argument to print?

If so, i

2条回答
  •  不思量自难忘°
    2020-12-14 17:40

    Using the -verbose or -v flag with javap version 1.7 or later will show the retained annotations.

    Example:

    javap -p -v ./services/target/windup-web-services/WEB-INF/classes/org/jboss/windup/web/services/model/RegisteredApplication.class
    
     #50 = Utf8   Ljavax/persistence/Column;
     #64 = Utf8   Lorg/jboss/windup/web/services/validators/NotBlankConstraint;
     #67 = Utf8   Ljavax/validation/constraints/Size;
    ...
    private java.lang.String title;
      descriptor: Ljava/lang/String;
      flags: ACC_PRIVATE
      RuntimeVisibleAnnotations:
        0: #50(#62=I#63)
        1: #64(#65=s#66)
        2: #67(#68=I#69,#70=I#63,#65=s#71
    

提交回复
热议问题