Stiamo sviluppando i nostri jar plugin Eclipse utilizzati dalla nostra applicazione basata su Eclipse. Attualmente stiamo usando la versione 2.0.8 proguard-maven-plugin
per offuscarli. Tuttavia, quando si esegue mvn install
su alcuni plugin, stiamo incontrando il seguente errore:Durante l'esecuzione di proguard-maven-plugin, "CreateProcess error = 206, Il nome file o l'estensione è troppo lungo" si verifica
[INFO] ---------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ---------------------------------------------------------------------
[INFO] Total time: 1:34.297s
[INFO] Finished at: Tue Apr 21 16:03:51 SGT 2015
[INFO] Final Memory: 88M/210M
[INFO] ---------------------------------------------------------------------
[ERROR] Failed to execute goal com.github.wvengen:proguard-maven-plugin:2.0.8:proguard (default) on project com.x.y: Execution default of goal com.github.wvengen:proguard-maven-plugin:2.0.8:proguard failed: java.io.IOException: Cannot run program "C:\Program Files (x86)\Java\jdk1.7.0_55\jre\bin\java.exe": CreateProcess error=206, The filename or extension is too long -> [Help 1]
qualcuno ha mai incontrato questo? Se sì, come hai risolto il problema?
Nota che ho effettivamente visto this question e altre questioni correlate, prima di decidere di chiedere ma la risposta da Brad Mace non è applicabile al mio caso, come l ' "errore CreateProcess = 206, Il nome del file o l'estensione è troppo lungo" è generato da Proguard e non di Javadoc. Inizialmente, penso (correggimi se sbaglio) che 1 delle 7 opzioni fornite da espinchi o una variazione di esse potrebbe funzionare ma non sono sicuro di quale. Giusto per farvi sapere i miei vincoli nel determinare la soluzione:
- Non sono sicuro se tutti i percorsi di classe in questo particolare plug-in sono validi dal momento che questo è stato sviluppato da qualcun altro molti, molti anni fa, in modo Non penso di poter ancora contattare lo sviluppatore. Questo rende esitante per ridurre i percorsi di classe per timore che possa effettivamente causare più danni che benefici.
- Non riesco a utilizzare l'opzione "usa IntelliJ" poiché questo problema si è verificato nella riga di comando di Windows durante l'installazione di mvn e non nell'IDE di Eclipse.
- Penso che le altre opzioni siano troppo noiose per me. Spero ci sia una soluzione più semplice.
Per riferimento, qui di seguito è il frammento di Proguard legate dal mio file pom:
<build>
<plugins>
<plugin>
<groupId>com.github.wvengen</groupId>
<artifactId>proguard-maven-plugin</artifactId>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>proguard</goal>
</goals>
</execution>
</executions>
<configuration>
<maxMemory>1024m</maxMemory>
<proguardInclude>${basedir}/proguard.conf</proguardInclude>
<libs>
<lib>${java.home}/lib/rt.jar</lib>
</libs>
<exclusions>
<exclusion>
<groupId>com.company.package</groupId>
</exclusion>
</exclusions>
</configuration>
</plugin>
</plugins>
</build>
possibile duplicato [errore CreateProcess = 206, del file o estensione troppo lunga durante l'esecuzione metodo main()] (http://stackoverflow.com/questions/10519558/createprocess-error-206-the-filename-or-extension-is-too-long-when-running-main) – gpapaz
in realtà, ho visto quel post prima di pubblicare la mia domanda. la risposta 'puoi aggiungere useexternalfile = "yes"' di Brad Mace non è applicabile al mio caso. Sto pensando che almeno 1 delle 7 opzioni presentate da espinchi può risolvere il mio problema, ma non sono sicuro di quale sia. – bookhuntress
Quindi, aggiorna la tua domanda per ottenere aiuto per determinare quale delle 7 opzioni funzionerà per il tuo caso, o vai a quella domanda e chiedi sui commenti? Così com'è, stai facendo la stessa domanda di quelli presentati come duplicati. – gpapaz