2016-07-16 106 views
5

Ho la seguente classe.Mantieni costruttore se il campo è annotato

public class StatusCategory 
{ 
    @JsonProperty("key") 
    private final String m_key = null; 

    public String getKey() 
    { 
     return(m_key); 
    } 
} 

Qual è l'opzione -keep che garantirà il costruttore non verrà rimosso da Proguard?

Quanto segue manterrà il costruttore; tuttavia, non voglio dover specificare ogni singola classe o pacchetto.

-keep class oracle.psr.ndr.jira.api.StatusCategory {<init>;} 

risposta

2

Annotare il costruttore con @JsonCreator e utilizzare -keepclassmembers in questo modo:

-keepclassmembers public class * { 
    @com.fasterxml.jackson.annotation.JsonCreator *; 
}