CreateProcess error = 206,运行main()方法时文件名或扩展名太长

我在eclipse helios中有这个错误:

执行命令行发生exception。 无法运行程序“C:\ Program Files(x86)\ Java \ jre6 \ bin \ javaw.exe”(目录“C:\ Users \ motiver \ helios_workspace \ TimeTracker”):CreateProcess error = 206,文件名或扩展名是太长

我研究了一下,但在Google App Engine上工作时,大部分问题都与DataNucleus有关。 但是我没有使用与Google App Engine远程相关的任何内容。 我正在用JBOSS 6上的Servlet 3.0做一个小项目。我正在使用Hibernate 4.1.2 for ORM和RESTEasy来公开Web服务。 我创build了一个具有main()方法的util文件,该方法基本上可以删除并重新创build模式。 当我需要一个干净的数据库进行testing时,我运行main()方法。 它在Tomcat 7上运行良好,但当我转移到JBoss 6时,它停止工作。

任何提示或解决scheme将不胜感激。

这个问题没有简单的(如点击几下或简单的命令)解决scheme。

在Eclipse.org的这个bug报告中引用一些答案,这些是解决方法。 选一个对你来说最痛苦的人:

  • 减less类path
  • 使用目录而不是jar文件
  • 使用包含所有其他jar的压缩jar文件,使用清单文件内的classpathvariables指向其他jar
  • 使用一个特殊的类加载器从configuration文件中读取类path
  • 尝试使用错误报告文档中附加的补丁之一
  • 使用自己的包装,如ant
  • 移动到IntelliJ(更新:@nitind指出,这不是一个选项)

更新 :2014年7月以后,还有更好的办法(感谢@ Brad-Mace的回答如下 :

如果您已经创build了自己的构build文件,而不是使用Project -> Generate Javadocs ,那么可以将useexternalfile="yes"添加到专门为解决此问题而devise的Javadoc任务。

如果您创build自己的构build文件而不是使用Project -> Generate Javadocs ,则可以将useexternalfile="yes"添加到javadoc任务中,该任务专为解决此问题而devise。

尝试更新您的Eclipse版本,最近closures的问题(2013-03-12)。 检查错误报告https://bugs.eclipse.org/bugs/show_bug.cgi?id=327193

在这里回答我自己的问题,以便解决scheme不会被埋在评论中。 我从eclipse中将该项目导出为可运行的jar,并执行了一个命令行“java -jar MyJar.jar”,它工作的很好

在错误报告Bug 327193中,它被认为是固定的,但最近发生在我身上的是Eclipse Kepler 4.3.2。

请下载Eclipse Juno或更新的补丁:

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

  1. 下载备份现有的eclipse / plugins / org.eclipse.jdt.launching_3。*。jar
  2. 将修补程序中的类复制并粘贴到org.eclipse.jdt.launching JAR(replace现有文件)。
  3. 重新启动Eclipse。

我调用Maven的时候遇到了同样的错误。

我的问题的根本原因是classpath非常巨大。 更新类path解决了这个问题。

我运行' ant deploy '时出现下面的错误

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

在它之前运行“ ant清理 ”来修复它。

尝试这个:

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

它发生是由于DataNucleus有时会用许多path覆盖参数。

你必须用这个覆盖它们:

-enhancerName ASM -api JDO -pu MediaToGo

希望能帮到你!

从这个线程的有效答案是我的特殊情况的正确答案。 指定datanucleus的ORM文件夹path肯定减lessjavapath编译。

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

我在android工作室得到了同样的错误。 我能够通过在IDE中运行Build – > Clean Project来解决它。