Erreur CreateProcess = 206, Le nom de fichier ou l’extension est trop long lors de l’exécution de la méthode main ()

J’ai cette erreur dans eclipse helios:

Une exception s’est produite lors de l’exécution de la ligne de commande. Impossible d’exécuter le programme “C: \ Program Files (x86) \ Java \ jre6 \ bin \ javaw.exe” (dans le répertoire “C: \ Users \ motiver \ helios_workspace \ TimeTracker”): Erreur CreateProcess = 206, Le nom du fichier ou l’extension est trop long

J’ai fait quelques recherches, mais la plupart des problèmes étaient liés à DataNucleus lors de l’utilisation de Google App Engine. Mais je n’utilise rien à distance lié à Google App Engine. Je fais un petit projet avec Servlet 3.0 sur JBOSS 6. J’utilise Hibernate 4.1.2 pour ORM et RESTEasy pour exposer un service Web. J’ai créé un fichier util qui a une méthode main () qui supprime et recrée le schéma. J’exécute le methos principal lorsque j’ai besoin d’une firebase database propre à des fins de test. Cela a bien fonctionné sur Tomcat 7 mais il a cessé de fonctionner lorsque je suis passé à JBoss 6.

Tout indice ou solution serait grandement apprécié.

Il n’y a pas de solution simple (comme dans quelques clics ou une commande simple) à ce problème.

Citant quelques réponses dans ce rapport de bogue dans Eclipse.org , ce sont les solutions de rechange. Choisissez celui qui vous est le moins pénible:

  • Réduire le classpath
  • Utiliser des répertoires au lieu de fichiers jar
  • Utilisez un fichier jar compressé contenant tous les autres fichiers JAR, utilisez la variable classpath dans le fichier manifeste pour pointer vers les autres fichiers JAR.
  • Utiliser un chargeur de classe spécial qui lit le classpath à partir d’un fichier de configuration
  • Essayez d’utiliser l’un des correctifs joints dans le rapport de rapport de bogue
  • Utiliser un propre wrapper, par exemple ant
  • Déplacer vers IntelliJ (mise à jour: comme @nitind le souligne, ce n’est pas une option)

Mise à jour : Après juillet 2014, il existe une meilleure solution (grâce à la réponse de @ Brad-Mace ci – dessous :

Si vous avez créé votre propre fichier de génération au lieu d’utiliser Project -> Generate Javadocs , vous pouvez append useexternalfile="yes" à la tâche Javadoc, conçue spécifiquement pour résoudre ce problème.

Si vous créez votre propre fichier de génération plutôt que d’utiliser Project -> Generate Javadocs vous pouvez append useexternalfile="yes" à la tâche javadoc , conçue spécifiquement pour résoudre ce problème.

Essayez de mettre à jour votre version d’Eclipse, le problème a été fermé récemment (2013-03-12). Vérifiez le rapport de bogue https://bugs.eclipse.org/bugs/show_bug.cgi?id=327193

Répondre à ma propre question ici pour que la solution ne soit pas enterrée dans les commentaires. J’ai exporté le projet sous forme de fichier exécutable depuis eclipse et j’ai fait une ligne de commande “java -jar MyJar.jar” et cela fonctionne parfaitement

Dans le rapport de bogue, bogue 327193, il est considéré comme corrigé, mais il m’est arrivé récemment avec Eclipse Kepler 4.3.2.

Veuillez télécharger le patch pour Eclipse Juno ou plus récent:

https://bugs.eclipse.org/bugs/attachment.cgi?id=216593

  1. Après le téléchargement, sauvegardez eclipse / plugins / org.eclipse.jdt.launching_3. *.
  2. Copiez et collez des classes dans le correctif vers JAR org.eclipse.jdt.launching (remplacez les fichiers existants).
  3. Redémarrez Eclipse.

J’ai la même erreur en invoquant Maven.

La cause profonde de mon problème était que le classpath était très grand. La mise à jour du classpath a résolu le problème.

J’ai rencontré ce problème aujourd’hui et j’ai pu le résoudre en utilisant ce plugin Gradle

C’est l’ url github est-ce

Si vous, comme moi, n’avez aucune idée de ce que Gradle est, mais devez exécuter un back-end pour faire votre travail frontal, vous devez trouver le fichier build.gradle appelé pour démarrer votre serveur BE et l’append à haut:

 plugins { id "ua.eshepelyuk.ManifestClasspath" version "1.0.0" } 

Essaye ça:

java -jar -Dserver.port = 8080 build / libs / APP_NAME_HERE.jar

il arrive que DataNucleus écrase parfois les arguments avec beaucoup de chemins.

Vous devez les écraser avec ceci:

-enhancerName ASM -api JDO -pu MediaToGo

J’espère vous aider!

La réponse valide de ce fil était la bonne réponse pour mon cas particulier. Spécifiez le chemin du dossier ORM pour datanucleus certainement réduire la compilation du chemin Java.

https://stackoverflow.com/a/1219427/1469481

J’ai eu l’erreur ci-dessous quand je lance ‘ ant deploy

 Cannot run program "C:\java\jdk1.8.0_45\bin\java.exe": CreateProcess error=206, The filename or extension is too long 

Corrigé par run ant ant avant lui.

J’ai eu la même erreur dans le studio Android. J’ai pu résoudre le problème en exécutant Build -> Clean Project dans l’EDI.

C’est à cause de votre long nom de répertoire de projet, ce qui vous donne un très long CLASSPATH . Soit vous devez réduire les fichiers JAR ajoutés à CLASSPATH (assurez-vous de ne supprimer que les fichiers JAR inutiles). Sinon, le meilleur moyen consiste à réduire le répertoire du projet et à importer à nouveau le projet. Cela réduira le CLASSPATH . Cela a fonctionné pour moi.

J’ai eu le même problème, mais j’utilisais plutôt netbeans.
J’ai trouvé une solution donc je partage ici parce que je n’ai pas trouvé cela n’importe où, donc si vous avez ce problème sur netbeans, essayez ceci:
(les noms peuvent être désactivés car mes netbeans sont en portugais) Cliquez avec le bouton droit de la souris sur project> properties> build> comstackr> Désélectionnez run compilation sur une machine virtuelle externe.