Eclipse常见错误及解决方案

来源:互联网 发布:sqlserver数据恢复 编辑:程序博客网 时间:2024/05/01 08:54

1 导入工程后出现叹号

问题原因
  导入的工程中包含了.classpath文件,Eclipse根据该文件加载完相应的jar包后并没有识别到这些jar包,虽然在build path中可以看到这些jar包,但是并不识别。
  
解决方案
  记录下引入的第三方jar包的位置(最好放到工程目录的lib文件夹下),然后将引入的第三方jar包全部删除,重新导入后,刷新即可解决。

2 运行或调试失败,报CreateProcess error=206, The filename or extension is too long

问题原因
  windows下命令行的长度是有限制的,如果你的工程中引入了太多的jar文件,在执行的时候需要将这些jar包全部放到命令行之中,从而造成超过限制,这个已经是一个已知的bug,编号327193,可以参见下面的链接。
https://bugs.eclipse.org/bugs/show_bug.cgi?id=327193

解决方案
  下载bug解决包,然后按下面的步骤更新Eclipse中的jar包文件。
  (1)关闭Eclipse程序,找到Eclipse下目录plugin中的org.eclipse.jdt.launching*.jar文件,复制备份一下,版本不同后面的星号代表的内容不同;
  (2)解压缩下载的bug解决包,拷贝里面的所有以class结尾的文件,然后打开第(1)步找到的jar包文件(用winrar或者其他压缩软件都可以打开,不是解压缩),打开后进入到org\eclipse\jdt\launching目录下,将复制的class文件放入到该文件夹内;
  (3)覆盖完毕,返回到jar文件的根目录,修改META-INF /MANIFEST.MF文件,删除所有以NAME开头的,我是全删除了,特别提示删除完毕后最后留两行空白行;删除完毕后如下图所示:

  这里写图片描述
  
  (4)重启Eclipse即可。

  还有一种情况是,我已经按上面的要求完成了修改,结果在更换目录或者重新导入工程后还是不好使(我的情况是运行没有问题,但是调试就报上面的错),那解决方案如下:
  (1)记录下你导入的工程中build path中的自定义user library,包括引用的jar文件地址和native library文件,如果没有user library那么就不用管这一步骤了;
  (2)找到该工程所在的workspace下面的.metadata文件夹,记住是在你的workspace下面,比如你现在打开的eclipse的工作空间是D:\myworkspace,那就到这个文件夹根目录下找.metadata文件;
  (3)关闭Eclipse,备份该文件,然后删除掉.metadata文件;
  (4)重新打开Eclipse,并选择工作空间为D:\myworkspace,打开后会发现以前导入的工程已经不见了,不用着急,使用File–>Import功能重现将工程添加进来,如果有user library的话配置好user library(此时虽然有,但是打开后会发现里面是空的,因此需要重新配置user library),添加完毕后就可以正常使用了。

0 0