2016-07-16 4 views
5

У меня есть следующий класс.Сохраните конструктор, если поле аннотируется

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

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

Что это -keep вариант, который будет гарантировать, конструктор не будет удален Proguard?

Следующее сохранит конструктор; однако я не хочу указывать каждый отдельный класс или пакет.

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

ответ

2

Annotate конструктор с @JsonCreator и использовать -keepclassmembers так:

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