Repository navigation
Expand file tree
/
Copy pathproguard.conf
More file actions
105 lines (82 loc) · 3.42 KB
/
Copy pathproguard.conf
File metadata and controls
105 lines (82 loc) · 3.42 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
#
# This ProGuard configuration file illustrates how to process applications.
# Usage:
# java -jar proguard.jar @applications.pro
#
-verbose
# Specify the input jars, output jars, and library jars.
# -injars build/libs/TestObfuscationApp-1.0.0.jar
#-outjars libs/Jama.jar
# Before Java 9, the runtime classes were packaged in a single jar file.
# -libraryjars <java.home>/lib/rt.jar
# As of Java 9, the runtime classes are packaged in modular jmod files.
-libraryjars <java.home>/jmods/java.base.jmod(!**.jar;!module-info.class)
-libraryjars <java.home>/jmods/java.prefs.jmod(!**.jar;!module-info.class)
-libraryjars <java.home>/jmods/java.desktop.jmod(!**.jar;!module-info.class)
-libraryjars <java.home>/jmods/java.datatransfer.jmod(!**.jar;!module-info.class)
-libraryjars <java.home>/jmods/java.logging.jmod(!**.jar;!module-info.class)
# -libraryjars '/home/ixi/javafx-sdk-16/lib'
# -libraryjars '/home/ixi/IdeaProjects/TestObfuscationApp/build/jmods'
#-libraryjars junit.jar
#-libraryjars servlet.jar
#-libraryjars jai_core.jar
#...
-keepclassmembernames class * {
@javafx.fxml.FXML *;
}
#-keeppackagenames pl.dimconit.**
# Save the obfuscation mapping to a file, so you can de-obfuscate any stack
# traces later on. Keep a fixed source file attribute and all line number
# tables to get line numbers in the stack traces.
# You can comment this out if you're not interested in stack traces.
#-applymapping in.map
# -printmapping out.map
#-renamesourcefileattribute SourceFile
#-keepattributes SourceFile,LineNumberTable
# Preserve all annotations.
-keepattributes *Annotation*,Exceptions, InnerClasses, Signature, SourceFile, LineNumberTable, javafx.fxml.FXML
-target 11
# You can print out the seeds that are matching the keep options below.
#-printseeds out.seeds
# Preserve all public applications.
-keepclasseswithmembers public class * {
public static void main(java.lang.String[]);
}
# 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();
}
-dontusemixedcaseclassnames
-useuniqueclassmembernames
-verbose
-dontnote
# Your application may contain more items that need to be preserved;
# typically classes that are dynamically created using Class.forName:
# -keep public class com.example.MyClass
# -keep public interface com.example.MyInterface
# -keep public class * implements com.example.MyInterface
-adaptresourcefilecontents **.fxml,**.properties,META-INF/MANIFEST.MF
-dontshrink
-dontoptimize
-keep class module-info
-keepattributes Module*
# -dontwarn