You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
61 lines
1.8 KiB
61 lines
1.8 KiB
#
|
|
# This ProGuard configuration file illustrates how to use annotations for
|
|
# specifying which classes and class members should be kept.
|
|
# Usage:
|
|
# java -jar proguard.jar @examples.pro
|
|
#
|
|
|
|
# Specify the input, output, and library jars.
|
|
# This is assuming the code has been compiled in the examples directory.
|
|
|
|
-injars examples(*.class)
|
|
-outjars out
|
|
|
|
-libraryjars <java.home>/lib/rt.jar
|
|
|
|
# Some important configuration is based on the annotations in the code.
|
|
# We have to specify what the annotations mean to ProGuard.
|
|
|
|
-include lib/annotations.pro
|
|
|
|
#
|
|
# We can then still add any other options that might be useful.
|
|
#
|
|
|
|
# Print out a list of what we're preserving.
|
|
|
|
-printseeds
|
|
|
|
# Preserve all annotations themselves.
|
|
|
|
-keepattributes *Annotation*
|
|
|
|
# Preserve all native method names and the names of their classes.
|
|
|
|
-keepclasseswithmembernames,includedescriptorclasses class * {
|
|
native <methods>;
|
|
}
|
|
|
|
# Preserve the special static methods that are required in all enumeration
|
|
# classes.
|
|
|
|
-keepclassmembers,allowoptimization enum * {
|
|
public static **[] values();
|
|
public static ** valueOf(java.lang.String);
|
|
}
|
|
|
|
# Explicitly preserve all serialization members. The Serializable interface
|
|
# is only a marker interface, so it wouldn't save them.
|
|
# You can comment this out if your application doesn't use serialization.
|
|
# If your code contains serializable classes that have to be backward
|
|
# compatible, please refer to the manual.
|
|
|
|
-keepclassmembers class * implements java.io.Serializable {
|
|
static final long serialVersionUID;
|
|
static final java.io.ObjectStreamField[] serialPersistentFields;
|
|
private void writeObject(java.io.ObjectOutputStream);
|
|
private void readObject(java.io.ObjectInputStream);
|
|
java.lang.Object writeReplace();
|
|
java.lang.Object readResolve();
|
|
}
|