J'essaie de faire fonctionner Maven avec ProGuard.Problèmes de Maven, Proguard et d'assemblage
Ce que je veux atteindre est le suivant:
Run ProGuard sur mes fichiers source et produire des classes brouillées
Créez un fichier manifeste qui fait référence à la classe principale afin que je puisse l'exécuter en tant que pot
Déballez tous les fichiers de bibliothèque associés et créez un grand fichier contenant tous les fichiers. Ce fichier ne doit contacter que les fichiers .class et .xml.
Assemblez-les dans des fichiers .zip et tar.gz contenant divers fichiers README.txt, etc.
Jusqu'à présent, j'ai quelque chose comme ceci:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.2</version>
<configuration>
<archive>
<manifest>
<mainClass>com.class.path.MainClass</mainClass>
</manifest>
</archive>
<includes>
<include>**/*.class</include>
<include>**/*.xml</include>
</includes>
</configuration>
</plugin>
<plugin>
<groupId>com.pyx4me</groupId>
<artifactId>proguard-maven-plugin</artifactId>
<configuration>
<options>
<option>-allowaccessmodification</option>
</options>
<obfuscate>true</obfuscate>
<injar>classes</injar>
<outjar>${project.build.finalName}.jar</outjar>
<outputDirectory>${project.build.directory}</outputDirectory>
<proguardInclude>src/main/assembly/proguard.conf</proguardInclude>
<libs>
lib/rt.jar</lib>
</libs>
</configuration>
<executions>
<execution>
<phase>process-classes</phase>
<goals>
<goal>proguard</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<executions>
<execution>
<id>assembly</id>
<phase>package</phase>
<goals>
<goal>assembly</goal>
</goals>
<configuration>
<descriptors>
<descriptor>
src/main/assembly/bin.xml
</descriptor>
</descriptors>
</configuration>
</execution>
</executions>
</plugin>
Mais j'ai pas de joie. Quelqu'un peut-il me donner de vagues indications à ce sujet?
Merci à l'avance, Matt
@starblue Maven ne pas tout concept [d'assemblées]. Cependant, '[assembly]' est très valide. Alors, s'il vous plaît, arrêtez de vous comporter comme les tags sont pour des domaines uniques, en excluant tout ce qui ne correspond pas à votre vision de leur utilisation. Les balises sont pour définir, ajouter plus de contraintes. Ne m'interdis pas d'utiliser un tag qui s'applique aussi à Maven. C'est flippant. –
http://maven.apache.org/plugins/maven-assembly-plugin/: Ce plugin génère des "assemblages". – starblue