Wir entwickeln unsere eigenen Eclipse-Plugin-Gläser von unserer Eclipse-basierten Anwendung verwendet. Wir verwenden derzeit proguard-maven-plugin
Version 2.0.8, um sie zu verschleiern. Wenn jedoch mvn install
auf einigen Plugins ausgeführt wird, werden wir zur Zeit die folgenden Fehler Problem aufgetreten ist:Beim Ausführen von Proguard-Maven-Plugin, "CreateProcess Fehler = 206, der Dateiname oder die Erweiterung ist zu lang" tritt
[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]
Hat jemand jemals begegnet? Wenn ja, wie haben Sie das Problem gelöst?
Beachten Sie, dass ich tatsächlich this question und andere verwandte Fragen vor der Entscheidung zu fragen gesehen habe, aber die Antwort von Brad Mace ist nicht auf meinen Fall anwendbar, da die "CreateProcess error = 206, der Dateiname oder die Erweiterung ist zu lang" generiert wird Proguard und nicht von Javadoc. Anfangs denke ich (korrigiere mich, wenn ich falsch liege), dass entweder eine der 7 Optionen, die von espinchi gegeben werden, oder eine Variante von ihnen funktionieren könnte, aber ich bin mir nicht sicher, welche. Nur, damit Sie meine Einschränkungen bei der Bestimmung der Lösung wissen:
- Ich bin nicht sicher, wenn alle der CLASSPATHs in diesem speziellen Plugin gültig sind, da diese vor vielen Jahren von jemand anderem viele, entwickelt wurde, so Ich glaube nicht, dass ich den Entwickler noch kontaktieren kann. Das macht mich zögerlich, die Klassenpfade zu reduzieren, aus Angst, dass es tatsächlich mehr schaden als nützen könnte.
- Ich kann den Schalter nicht verwenden, um "IntelliJ" -Option zu verwenden, da dieses Problem in der Windows-Befehlszeile bei mvn install und nicht in Eclipse IDE aufgetreten ist.
- Ich denke, die anderen Optionen sind zu langweilig für mich. Ich hoffe, es gibt eine einfachere Lösung.
Als Referenz unten ist die Proguard bezogenen Ausschnitt aus meiner pom-Datei:
<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>
mögliches Duplikat [Create error = 206, ist der Dateiname oder Erweiterung zu lang, wenn main() Methode läuft] (http://stackoverflow.com/questions/10519558/createprocess-error-206-the-filename-or-extension-is-zu-long-wenn-running-main) – gpapaz
eigentlich habe ich diesen Beitrag gesehen, bevor ich meine Frage geschrieben habe. die Antwort 'Sie können useexternalfile = "yes"' von Brad Mace hinzufügen, ist nicht auf meinen Fall anwendbar. Ich denke, dass mindestens 1 der 7 Optionen von Espinchi mein Problem lösen kann, aber ich bin mir nicht sicher, welches. – bookhuntress
Dann aktualisieren Sie entweder Ihre Frage, um Hilfe zu erhalten, um festzustellen, welche der 7 Optionen für Ihren Fall funktioniert, oder gehen Sie zu dieser Frage und fragen Sie nach Kommentaren? So stellen Sie die gleiche Frage wie die, die als Duplikate präsentiert werden. – gpapaz