2016-04-22 16 views
0

私のアプリケーション用のプラグインapiを作成しています。問題は今、私のMaven Proguardの設定がパラメータ化されたMapList、およびその他のパラメータ化されたオブジェクトを混乱させることです。proguard難読化後のパラメータ化されていないマップ

だから私はこのコードを持っている:

public final Map<String, PermissionGroup> getPermissionGroups() { 
    return Vars.PERMGROUPS; 
} 

Vars.PERMGROUPSはこれです:

public static final Map<String, PermissionGroup> PERMGROUPS = new HashMap<>(); 

私はgetPermissionGroupsを呼び出すときだから今、私はパラメータなしでMapを取得します。

のpom.xml

... 
     <plugin> 
      <groupId>com.github.wvengen</groupId> 
      <artifactId>proguard-maven-plugin</artifactId> 
      <version>2.0.11</version> 
      <executions> 
       <execution> 
        <phase>package</phase> 
        <goals> 
         <goal>proguard</goal> 
        </goals> 
       </execution> 
      </executions> 
      <configuration> 
       <obfuscate>true</obfuscate> 
       <injar>${project.build.finalName}.jar</injar> 
       <outjar>${project.build.finalName}-final.jar</outjar> 
       <includeDependency>true</includeDependency> 
       <options> 
        <option>-keep public class my.package.Main { public static void main(java.lang.String[]); }</option> 
        <option>-keep public class my.package.plugins.** { *; }</option> 
        <option>-keep public class my.package.wrapper.** { *; }</option> 
        <option>-dontusemixedcaseclassnames</option> 
        <option>-dontskipnonpubliclibraryclasses</option> 
        <option>-verbose</option> 
        <option>-obfuscationdictionary dict.txt</option> 
        <option>-classobfuscationdictionary dict.txt</option> 
        <option>-packageobfuscationdictionary dict.txt</option> 
       </options> 
       <libs> 
        <lib>${java.home}/lib/rt.jar</lib> 
        <lib>${java.home}/lib/jce.jar</lib> 
       </libs> 
       <assembly> 
        <inclusions> 
         ... 
        </inclusions> 
       </assembly> 
       <archive> 
        <manifest> 
         <mainClass>my.package.Main</mainClass> 
        </manifest> 
       </archive> 
      </configuration> 
      <dependencies> 
       <dependency> 
        <groupId>net.sf.proguard</groupId> 
        <artifactId>proguard-base</artifactId> 
        <version>4.11</version> 
        <scope>runtime</scope> 
       </dependency> 
      </dependencies> 
     </plugin> 
... 

dict.txtでちょうど20000のランダムな文字列があります。

答えて

関連する問題