使用Java 7的ProGuard + Maven

我正在尝试将ProGuard作为Maven构建过程的一部分。 问题是官方的Maven插件使用的是ProGuard 4.3,它不支持Java 7.有没有简单的方法让插件使用Proguard 4.8?

我已经尝试为插件指定依赖项,但ProGuard似乎有一个新的Maven模块结构(proguard-base,proguard-parent等),所以插件不能使用任何版本> 4.4。 这是我目前的pom看起来如何:

 com.pyx4me proguard-maven-plugin   package  proguard     4.8 true  -allowaccessmodification -keep public class com.degoo.ui.ClientBackendStarter { public *; public static *; }  ${project.build.finalName}.jar ${project.build.finalName}-small.jar ${project.build.directory}  ${java.home}/lib/rt.jar ${java.home}/lib/jsse.jar  false    net.sf.proguard proguard 4.8 runtime    

有什么建议么?

我使用com.github.wvengen的proguard-maven-plugin。 注意不同的groupId 。 这样我就可以使用最新的proguard-base artifact 5.0。 两者都在Maven Central。 这是我的pom.xml中的proguard-base部分现在的样子:

父pom.xml:

     com.github.wvengen proguard-maven-plugin 2.0.8   net.sf.proguard proguard-base 5.0 runtime    [...] 

这是我孩子pom.xml的其余部分,但你可能想要修改它:

     com.github.wvengen proguard-maven-plugin   process-classes-with-proguard process-classes  proguard   256m classes  ${rt.jar.path} ${jsse.jar.path}  true true false ${project.basedir}/proguard.conf     

更新:对于我的Android项目,我没有使用像proguard-maven-plugin这样的专用Proguard插件,因为android-maven-plugin处理ProGuard混淆本身,并且更好地集成到Android的构建过程中。

有一个原始proguard-maven插件的分支。 这是git-hubed 。 请看你是怎么做的 。

是我们如何做到的最新例子。 不再需要配置文件。

我在这里找到了一个解决方案: https : //groups.google.com/forum/?fromgroups# ! topic / pyx4me-users / NUZi1oySvQE 。 基本上我必须下载并安装ProGuard到我的本地仓库。