Skip to content

Commit 2ba2b92

Browse files
committed
Add proguard-maven-plugin for obfuscation.
1 parent b817ec0 commit 2ba2b92

File tree

1 file changed

+85
-75
lines changed

1 file changed

+85
-75
lines changed

pom.xml

Lines changed: 85 additions & 75 deletions
Original file line numberDiff line numberDiff line change
@@ -540,6 +540,91 @@
540540
</plugins>
541541
</build>
542542
</profile>
543+
<profile>
544+
<id>proguard</id>
545+
<activation>
546+
<jdk>[,22)</jdk>
547+
</activation>
548+
<build>
549+
<plugins>
550+
<plugin>
551+
<groupId>com.github.wvengen</groupId>
552+
<artifactId>proguard-maven-plugin</artifactId>
553+
<version>2.6.1</version>
554+
<executions>
555+
<execution>
556+
<phase>verify</phase>
557+
<goals>
558+
<goal>proguard</goal>
559+
</goals>
560+
<configuration>
561+
<exclusions>
562+
<exclusion>
563+
<groupId>org.projectlombok</groupId>
564+
<artifactId>lombok</artifactId>
565+
</exclusion>
566+
<exclusion>
567+
<groupId>xml-apis</groupId>
568+
<artifactId>xml-apis</artifactId>
569+
</exclusion>
570+
</exclusions>
571+
<libs>
572+
<lib>${java.home}/jmods/java.base.jmod</lib>
573+
<lib>${java.home}/jmods/java.logging.jmod</lib>
574+
<lib>${java.home}/jmods/java.xml.jmod</lib>
575+
<lib>${java.home}/jmods/java.sql.jmod</lib>
576+
<lib>${java.home}/jmods/java.desktop.jmod</lib>
577+
<lib>${java.home}/jmods/java.prefs.jmod</lib>
578+
<lib>${java.home}/jmods/java.compiler.jmod</lib>
579+
<lib>${java.home}/jmods/java.management.jmod</lib>
580+
<lib>${java.home}/jmods/java.naming.jmod</lib>
581+
</libs>
582+
<options>
583+
<option>-keep public class org.eolang.** { *; }</option>
584+
<option>-dontnote **</option>
585+
<option>-dontwarn lombok.Generated</option>
586+
<option>-dontwarn org.apache.ivy.**</option>
587+
<option>-dontwarn org.fusesource.jansi.**</option>
588+
<option>-dontwarn com.thoughtworks.xstream.**</option>
589+
<option>-dontwarn picocli.**</option>
590+
<option>-dontwarn org.jline.**</option>
591+
<option>-dontwarn javax.mail.**</option>
592+
<option>-dontwarn javax.jms.**</option>
593+
<option>-dontwarn edu.umd.cs.findbugs.annotations.**</option>
594+
<option>-dontwarn org.apache.hadoop.**</option>
595+
<option>-dontwarn org.apache.log4j.**</option>
596+
<option>-dontwarn org.apache.commons.text.**</option>
597+
<option>-dontwarn org.apache.groovy.**</option>
598+
<option>-dontwarn org.apache.commons.logging.**</option>
599+
<option>-dontwarn javax.servlet.**</option>
600+
<option>-dontwarn org.apache.log.**</option>
601+
<option>-dontwarn org.jetbrains.annotations.**</option>
602+
<option>-dontwarn org.codehaus.groovy.**</option>
603+
<option>-dontwarn groovy.**</option>
604+
<option>-dontwarn groovyjarjarantlr4.**</option>
605+
<option>-dontwarn groovyjarjarasm.**</option>
606+
<option>-dontwarn io.github.secretx33.**</option>
607+
<option>-dontwarn com.ibm.icu.**</option>
608+
<option>-dontwarn jdk.internal.**</option>
609+
<option>-dontwarn javax.json.**</option>
610+
<option>-dontwarn com.opencsv.**</option>
611+
<option>-dontwarn org.apache.commons.lang3.**</option>
612+
<option>-dontwarn net.sf.saxon.**</option>
613+
<option>-dontwarn com.jcabi.xml.**</option>
614+
<option>-dontwarn jakarta.servlet.**</option>
615+
<option>-dontwarn com.google.common.**</option>
616+
<option>-dontwarn com.jcabi.manifests.**</option>
617+
</options>
618+
<injar>${project.build.finalName}.jar</injar>
619+
<includeDependencyInjar>true</includeDependencyInjar>
620+
<obfuscate>false</obfuscate>
621+
</configuration>
622+
</execution>
623+
</executions>
624+
</plugin>
625+
</plugins>
626+
</build>
627+
</profile>
543628
<profile>
544629
<id>reserved</id>
545630
<activation>
@@ -663,81 +748,6 @@
663748
</profiles>
664749
<build>
665750
<plugins>
666-
<plugin>
667-
<groupId>com.github.wvengen</groupId>
668-
<artifactId>proguard-maven-plugin</artifactId>
669-
<version>2.6.1</version>
670-
<executions>
671-
<execution>
672-
<phase>verify</phase>
673-
<goals>
674-
<goal>proguard</goal>
675-
</goals>
676-
<configuration>
677-
<exclusions>
678-
<exclusion>
679-
<groupId>org.projectlombok</groupId>
680-
<artifactId>lombok</artifactId>
681-
</exclusion>
682-
<exclusion>
683-
<groupId>xml-apis</groupId>
684-
<artifactId>xml-apis</artifactId>
685-
</exclusion>
686-
</exclusions>
687-
<libs>
688-
<lib>${java.home}/jmods/java.base.jmod</lib>
689-
<lib>${java.home}/jmods/java.logging.jmod</lib>
690-
<lib>${java.home}/jmods/java.xml.jmod</lib>
691-
<lib>${java.home}/jmods/java.sql.jmod</lib>
692-
<lib>${java.home}/jmods/java.desktop.jmod</lib>
693-
<lib>${java.home}/jmods/java.prefs.jmod</lib>
694-
<lib>${java.home}/jmods/java.compiler.jmod</lib>
695-
<lib>${java.home}/jmods/java.management.jmod</lib>
696-
<lib>${java.home}/jmods/java.naming.jmod</lib>
697-
</libs>
698-
<options>
699-
<option>-keep public class org.eolang.** { *; }</option>
700-
<option>-dontnote **</option>
701-
<option>-dontwarn lombok.Generated</option>
702-
<option>-dontwarn org.apache.ivy.**</option>
703-
<option>-dontwarn org.fusesource.jansi.**</option>
704-
<option>-dontwarn com.thoughtworks.xstream.**</option>
705-
<option>-dontwarn picocli.**</option>
706-
<option>-dontwarn org.jline.**</option>
707-
<option>-dontwarn javax.mail.**</option>
708-
<option>-dontwarn javax.jms.**</option>
709-
<option>-dontwarn edu.umd.cs.findbugs.annotations.**</option>
710-
<option>-dontwarn org.apache.hadoop.**</option>
711-
<option>-dontwarn org.apache.log4j.**</option>
712-
<option>-dontwarn org.apache.commons.text.**</option>
713-
<option>-dontwarn org.apache.groovy.**</option>
714-
<option>-dontwarn org.apache.commons.logging.**</option>
715-
<option>-dontwarn javax.servlet.**</option>
716-
<option>-dontwarn org.apache.log.**</option>
717-
<option>-dontwarn org.jetbrains.annotations.**</option>
718-
<option>-dontwarn org.codehaus.groovy.**</option>
719-
<option>-dontwarn groovy.**</option>
720-
<option>-dontwarn groovyjarjarantlr4.**</option>
721-
<option>-dontwarn groovyjarjarasm.**</option>
722-
<option>-dontwarn io.github.secretx33.**</option>
723-
<option>-dontwarn com.ibm.icu.**</option>
724-
<option>-dontwarn jdk.internal.**</option>
725-
<option>-dontwarn javax.json.**</option>
726-
<option>-dontwarn com.opencsv.**</option>
727-
<option>-dontwarn org.apache.commons.lang3.**</option>
728-
<option>-dontwarn net.sf.saxon.**</option>
729-
<option>-dontwarn com.jcabi.xml.**</option>
730-
<option>-dontwarn jakarta.servlet.**</option>
731-
<option>-dontwarn com.google.common.**</option>
732-
<option>-dontwarn com.jcabi.manifests.**</option>
733-
</options>
734-
<injar>${project.build.finalName}.jar</injar>
735-
<includeDependencyInjar>true</includeDependencyInjar>
736-
<obfuscate>false</obfuscate>
737-
</configuration>
738-
</execution>
739-
</executions>
740-
</plugin>
741751
<plugin>
742752
<groupId>com.github.spotbugs</groupId>
743753
<artifactId>spotbugs-maven-plugin</artifactId>

0 commit comments

Comments
 (0)