Maven Proguard обрабатывает библиотеку jar, что другие приложения будут зависеть от одного - PullRequest
2 голосов
/ 27 апреля 2011

Вот как выглядит мой плагин для сборки в разделе:

<plugin>
    <groupId>com.pyx4me</groupId>
    <artifactId>proguard-maven-plugin</artifactId>
    <version>2.0.4</version>
    <executions>
        <execution>
            <phase>package</phase>
            <goals>
                <goal>proguard</goal>
            </goals>
        </execution>
    </executions>
    <configuration>
        <options>
            <option>-dontshrink</option>
            <option>-dontnote</option>
            <option>-allowaccessmodification</option>
            <option>-dontskipnonpubliclibraryclasses</option>
            <option>-dontskipnonpubliclibraryclassmembers</option>
        </options>
        <libs>
            <lib>${java.home}/lib/rt.jar</lib>
            <lib>${java.home}/lib/jsse.jar</lib>
        </libs>
    </configuration>
</plugin>

Вот что я получаю от выполнения mvn clean package

[proguard] Error: You have to specify '-keep' options for the shrinking step.

Как мне указать параметры хранения для библиотеки, где я просто хочу запутать?

1 Ответ

5 голосов
/ 19 декабря 2011

Вы должны определить с помощью опции -keep точки входа вашего приложения, потому что вы не можете его скрыть. Например, если ваш основной класс запутан, он будет переименован, и вы не сможете его запустить. То же самое для открытых интерфейсов ваших API.

...