如何在使用proguard-maven-plugin后组装项目

我正在尝试在打包我的应用程序时添加一个混淆步骤。 我认为我必须在编译器插件和程序集之间插入Proguard插件(程序集只将我的所有应用程序和依赖项放入一个jar中)。

 myApp   org.apache.maven.plugins maven-compiler-plugin 3.2  1.7 1.7    com.github.wvengen proguard-maven-plugin 2.0.11   obfuscation-packaging package  proguard   5.2 true true false true ${project.build.finalName}.jar ${project.build.finalName}.jar true  ${java.home}/lib/rt.jar   ...       net.sf.proguard proguard-base 5.2     maven-assembly-plugin 2.4   create-executable-jar package  single    assembly.xml    myApp.Main         

编译工作正常,混淆也是如此,但是程序集似乎是用正常的jar而不是混淆的jar。

如果需要,这是我的assembly.xml:

    with-dep  jar  false    true runtime false     ${project.build.outputDirectory}     

最后,myApp.jar被混淆了,但myApp-with-dep.jar不是……我也确切地说我不太确定我的proguard插件的配置。 如果你看到一些奇怪的东西,说出来。

谢谢你的时间。

我通过放弃maven程序集插件来解决它的问题。 希望它可以帮助某人。

   org.apache.maven.plugins maven-compiler-plugin 3.2  1.7 1.7     com.github.wvengen proguard-maven-plugin 2.0.13   obfuscation-packaging package  proguard   5.2 true true ${project.build.finalName}.jar ${project.build.finalName}.jar proguard_map.txt proguard_seed.txt  ${java.home}/lib/rt.jar   ...       net.sf.proguard proguard-base 5.2     org.apache.maven.plugins maven-shade-plugin 2.4.3   package  shade     xxx.Main     *:*  META-INF/*.SF META-INF/*.DSA META-INF/*.RSA