【问题标题】:How to get Proguard to overwrite the original jar with the optimized one?如何让 Proguard 用优化的 jar 覆盖原始 jar?
【发布时间】:2014-01-20 16:52:32
【问题描述】:

我无法让 Proguard 用 Proguard 的优化版本覆盖 Maven 生成的原始 jar。这是我的 POM.xml 的一部分:

        <plugin>
            <groupId>com.github.wvengen</groupId>
            <artifactId>proguard-maven-plugin</artifactId>
            <executions>
                <execution>
                    <phase>package</phase>
                    <goals><goal>proguard</goal></goals>
                </execution>
            </executions>
            <configuration>
                <proguardVersion>4.11</proguardVersion>
                <injar>${project.build.finalName}.jar</injar>
                <outjar>${project.build.finalName}.jar</outjar>
                <options>
                    <option>-keep class **</option>
                    <option>-dontskipnonpubliclibraryclasses</option>
                    <option>-dontskipnonpubliclibraryclassmembers</option>
                </options>
                <libs>
                    <lib>${java.home}/lib/rt.jar</lib>
                    <lib>${java.home}/lib/jsse.jar</lib>
                    <lib>${java.home}/lib/jce.jar</lib>
                </libs>
            </configuration>
            <dependencies>
                <dependency>
                    <groupId>net.sf.proguard</groupId>
                    <artifactId>proguard-base</artifactId>
                    <version>4.11</version>
                </dependency>
            </dependencies>
        </plugin>

注意这两行:

    <injar>${project.build.finalName}.jar</injar>
    <outjar>${project.build.finalName}.jar</outjar>

我试图让 Proguard 使用原始 jar 作为输入并将其输出到同一个 jar,但我得到的是原始 jar 后缀为“_proguard_base”,优化后的 jar 被命名为它应该如何命名.仅当 inJar 和 outJar 选项相同时才会发生这种情况。

另外,我为此使用带有 Maven 插件的 Eclipse。任何帮助表示赞赏。

【问题讨论】:

    标签: java eclipse maven jar proguard


    【解决方案1】:

    ProGuard 无法将输出 jar 写入与输入 jar 相同的文件。 Maven插件似乎试图通过重命名输入jar来解决它。您可能必须在构建过程中考虑到这一点。

    【讨论】:

    • 在这种情况下,有没有办法摆脱原来的罐子?
    猜你喜欢
    • 2015-02-23
    • 2012-04-07
    • 2014-03-10
    • 2010-10-02
    • 1970-01-01
    • 1970-01-01
    • 2017-01-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多