Proguard dice que no puede encontrar ninguna clase

Estoy usando Proguard con una aplicación Spring Mvc y Maven.

a sección de compilación de @Mi pom.xml se ve así:

<build>
        <finalName>myapp</finalName>
        <plugins>
           <plugin>
                <groupId>com.pyx4me</groupId>
                <artifactId>proguard-maven-plugin</artifactId>
                <executions>
                    <execution>
                        <phase>package</phase>
                        <goals>
                            <goal>proguard</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <obfuscate>true</obfuscate>
                    <!--<options>-->
                        <!--<option>-keep public class</option>-->
                    <!--</options>-->
                    <injar>${project.build.finalName}</injar>
                    <injar>${project.build.finalName}</injar>
                    <inFilter>com.myapp.*</inFilter>
                </configuration>
            </plugin>
         </plugins>

También probé:

<injar>${project.build.finalName}.war</injar>

Cuando corro:

mvn clean install

Mensaje de falla de construcción:

[proguard] Reading program war [/Users/me/dev/git/myproject/myapp/target/myapp.war] (filtered)
 [proguard] Error: The input doesn't contain any classes. Did you specify the proper '-injars' options?

ERROR] Failed to execute goal com.pyx4me:proguard-maven-plugin:2.0.4:proguard (default) on project myapp: Obfuscation failed (result=1) -> [Help 1]

Parece haber recogido mi jar correctamente como muestran los mensajes antes:

[INFO] --- proguard-maven-plugin:2.0.4:proguard (default) @ myapp ---
[INFO] execute ProGuard [-injars, '/Users/me/dev/gitserver/myproject/myapp/target/myapp.war'(!META-INF/maven/**,com.myapp.*), -outjars, '/Users/me/dev/git/myproject/myapp/target/myapp_pg.war', -libraryjars, ....

Además, ¿qué opciones sugiere que use? Este es un mvc de resorte, así que tengo anotaciones como:

@ Autowired@Servici@Repositori@Controlado

e modo que cualquiera de esas clases / campos no debería renombrarse, imagino.

(Mi objetivo es hacer que sea un dolor de cabeza para alguien que se descompila, para que no puedan simplemente descompilar y usar el código. Ofuscarse les permitirá usarlo, pero no podrán mantener la base de código a menos que vuelvan a -escríbalo. No tengo ningún algoritmo sofisticado, así que no tengo nada que ocultar realmente a ese respecto.)

Actualiza

Dejadme ser claro aquí, mi mvc de primavera usando maven por alguna razón (soy nuevo en maven) cuando hago una instalación limpia de mvn produce tanto un archivo myapp.war como un myapp de guerra explotado / (esto es lo que quiero implementar en producción, no el archivo myapp.war)

Mi carpeta myapp tiene:

/target/myapp/
/target/myapp/meta-inf (empty folder)
/target/myapp/web-inf
/target/myapp/web-inf/classes (com.myapp. ...)
/target/myapp/web-inf/lib/
/target/myapp/web-inf/ web.xml, application.xml (for spring)
/target/myapp/web-inf/views/

So proguard debería ofuscarse en la carpeta / target / myapp / web-inf / classes ¿verdad? ¿Cómo le digo que lo haga?

Update 2

Estoy recibiendo esto ahora:

OK, no obtengo: no se pudo ejecutar el objetivo ... proguard .. No se puede cambiar el nombre de / Users / me / dev / git / project1 / myapp / target / myapp / web-inf / classes (consulte mi sección de actualizaciones para lo que cambié en mi pom.xml)

Cambié mi pom.xml con:

            <configuration>
                <obfuscate>true</obfuscate>

                <injar>${project.build.finalName}/WEB-INF/classes/</injar>
                <inFilter>com/myapp/**</inFilter>
            </configuration>

Respuestas a la pregunta(4)

Su respuesta a la pregunta