Eclipse启动不了,一闪而过的解决思路和示例


eclipse启动不了,双击程序后splash一闪而过,没有任何错误提示。怎么办??

这种情况一般是java配置都正确的情况下发生的。呵呵,呵呵。8个啊8个。

(搜到很多打酱油评论都是说重装系统啦,重装eclipse啦。 好点的说改eclipse.ini啦,设置javahome和path啦。。遇到问题就想闪,来点研究的精神好不好。首先总要看看问题出在哪里吧?)

在eclipse文件夹里面有一个eclipsec.exe程序,在命令行里运行这个程序,你将会得到问题对应的出错提示。

你可以用这个命令获得的提示来搜索你的解决办法。



我遇到的提示是:

---------------------------------------------------------------------------

D:\eclipse>eclipsec.exe
Error occurred during initialization of VM
java/lang/NoClassDefFoundError: java/lang/Object

---------------------------------------------------------------------------

其实这个时候运行java.exe也是有错误提示的:

--------------------------------------------------------------------------

D:\eclipse-helios>java
Error occurred during initialization of VM
java/lang/NoClassDefFoundError: java/lang/Object

--------------------------------------------------------------------------

这两个错误提示是一样的。这就是说eclipse运行不起来就是因为java.exe不能正常运行。



我可以确认java_home和path变量都正确。只有进入jdk安装目录运行java.exe才正常:

-------------------------------------------------------------------------

C:\Programme\Java\jdk1.6>java
Usage: java [-options] class [args...]
           (to execute a class)
   or  java [-options] -jar jarfile [args...]
           (to execute a jar file)

where options include:
    -client       to select the "client" VM

。。。。。。。。

-------------------------------------------------------------------------



就是说,在非jdk目录下运行的java.exe并不是我path变量所设定的这个java.exe。有李鬼出现。

普通位置运行时的java.exe另有其物。称之为李鬼java.exe

程序运行的优先规则通常是,在本目录及子目录无此程序(java.exe)的情况下。首先找系统目录%SystemRoot%,%SystemRoot%\system32(具体到某一个系统, 经常指的是C:\WINDOWS和C:\WINDOWS\system32这两个文件夹。),接下来才会找其他用户定义path对应的目录。如果找到了该程序,则搜索结束,运行该程序。

这样说来李鬼java.exe在查找 用户定义path对应的目录前 被过早找到,它应该藏在这几个搜索更优先的文件夹里面。果不其然,在C:\WINDOWS\system32下,我看到了几个创建于2005年的老前辈:java.exe javaws.exe javaw.exe jpicpl.cpl 除了收藏我还能做什么!内牛满面啊!!

把这几个文件移出以后,再在任意位置运行java.exe 都正常了。

eclipse闪屏但不启动问题随之解决!

-------------------------------------------------------------------------------------------

附录:

找李鬼java.exe的其他方法:

C:\>dir /s java.exe

这个命令列出了当前目录下所有子目录里包括的java.exe 貌似比explorer方式搜索的快。

逆向找程序很容易让人想到linux的whereis命令。 搜”whereis for windows“能得到一堆结果。


此文是本人转载!
原文地址: http://hi.baidu.com/chiuee/blog/item/fd8a090835faacdd3ac763f4.html

你可能感兴趣的:(eclipse,Splash)