Eclipse打不开,始终报错,还能不能开心的敲代码了???

首先说下造成我这个愚蠢错误的起源:电脑是win10系统,本来是可以正常使用的。某一天,我正在使用python,打开命令提示符,看见开头是中文(现在成了下面这个样了),出于强迫症。我就上网去找处理方法。在知乎某篇回答,我找到注册表,修改了计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\S-1-5-21-34987087-1338907778-1883452047-1001的中文名。接着重启电脑,结果发现桌面上以前的偏好设置完全不见了,进入命令提示符下,确实变成了英文,但并不是我设置的那个,而是system32.大失所望,于是我又进入注册表把ProfileListPath的中文改回来了(下面还多了个文件)。结果就酿成了现在的错误。

修改的注册表位置:

修改后运行命令界面变成这样了:

好了,当我打开Eclipse时,错误接踵而至。

出现上图错误:An error has occurred.See the log file E:\Eclipse Workspace\.metadata\.log。根据提示我找到Eclipse工作空间的.log文件。

用记事本打开.log文件如下:

!SESSION 2018-11-02 08:30:30.122 -----------------------------------------------

eclipse.buildId=4.4.2.M20150204-1700

java.version=10.0.1

java.vendor=Oracle Corporation

BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=zh_CN

Framework arguments:  -product org.eclipse.epp.package.jee.product

Command-line arguments:  -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product

!ENTRY org.eclipse.osgi 4 0 2018-11-02 08:30:43.929

!MESSAGE Application error

!STACK 1

java.lang.NoClassDefFoundError: org/w3c/dom/stylesheets/StyleSheet

at org.eclipse.e4.ui.css.swt.internal.theme.ThemeEngineManager.getCSSSWTEngine(ThemeEngineManager.java:41)

at org.eclipse.e4.ui.css.swt.internal.theme.ThemeEngineManager.getEngineForDisplay(ThemeEngineManager.java:30)

at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createThemeEngine(PartRenderingEngine.java:1428)

at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.initializeStyling(PartRenderingEngine.java:1281)

at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1036)

at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)

at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1032)

at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:148)

at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:636)

at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)

at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:579)

at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)

at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:135)

at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)

at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)

at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)

at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)

at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)

at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.base/java.lang.reflect.Method.invoke(Unknown Source)

at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:648)

at org.eclipse.equinox.launcher.Main.basicRun(Main.java:603)

at org.eclipse.equinox.launcher.Main.run(Main.java:1465)

at org.eclipse.equinox.launcher.Main.main(Main.java:1438)

Caused by: java.lang.ClassNotFoundException: org.w3c.dom.stylesheets.StyleSheet cannot be found by org.eclipse.e4.ui.css.core_0.10.100.v20140424-2042

at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:432)

at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:345)

at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:337)

at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:160)

at java.base/java.lang.ClassLoader.loadClass(Unknown Source)

... 26 more

接下来,我在Eclipse官网论坛里看到一个留言:

Trimmed javax.xml MANIFEST.MF

With some further discussion on jdk9-dev: the problems when using the app class loader seem to come from the situation that part of the org.w3c class files come from the javax.xml bundle.

So, I did a small experiment: remove all .class files from the javax.xml bundle, but leave the exports information. My assumption here was that that should then "export" the JDK classes.

That didn't quite work: eclipse failed to start because org.w3c.dom.css was unavailable. Adding those classes to the bundle however worked to the effect that Eclipse starts up and seems to be usable.

So, workaround instructions:

$ cd /some/tmp/directory

$ jar xf $ECLIPSE_HOME/plugins/javax.xml_1.3.4.v201005080400.jar

$ rm $ECLIPSE_HOME/plugins/javax.xml_1.3.4.v201005080400.jar

$ jar cvmf whereever/you/downloaded/to/MANIFEST.MF-trimmed $ECLIPSE_HOME/plugins/javax.xml_1.3.4.v201005080400.jar about* license/ org/apache/ plugin.properties org/w3c/dom/css

$ # modify $ECLIPSE_HOME/eclipse.ini and add -Dorg.osgi.framework.bundle.parent=app

而此时的我一脸懵逼。

接下来呀,我换了个1.8.0的Java(较低版本),以前是10.0.1。Eclispe是成功打开了。可惜当弹出提示Java有更新时,我执行会出现如下应用程序错误。

点详细信息如下:

 代码复制出来是这个样子:

java.lang.IllegalArgumentException: Invalid characters in hostname

at java.net.HostPortrange.toLowerCase(Unknown Source)

at java.net.HostPortrange.<init>(Unknown Source)

at java.net.URLPermission$Authority.<init>(Unknown Source)

at java.net.URLPermission.parseURI(Unknown Source)

at java.net.URLPermission.init(Unknown Source)

at java.net.URLPermission.<init>(Unknown Source)

at sun.net.www.protocol.http.HttpURLConnection.URLtoSocketPermission(Unknown Source)

at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)

at sun.net.www.protocol.http.HttpURLConnection.getHeaderField(Unknown Source)

at java.net.URLConnection.getContentType(Unknown Source)

at com.sun.deploy.net.proxy.AbstractAutoProxyHandler.isSupportedINSFile(Unknown Source)

at com.sun.deploy.net.proxy.AbstractAutoProxyHandler.retrieveContentOfPACFile(Unknown Source)

at com.sun.deploy.net.proxy.AbstractAutoProxyHandler.contructLegacyPACScript_16(Unknown Source)

at com.sun.deploy.net.proxy.AbstractAutoProxyHandler.init(Unknown Source)

at com.sun.deploy.net.proxy.SunAutoProxyHandler.init(Unknown Source)

at com.sun.deploy.net.proxy.DynamicProxyManager.reset(Unknown Source)

at com.sun.deploy.net.proxy.DeployProxySelector.reset(Unknown Source)

at com.sun.javaws.Main.initializeExecutionEnvironment(Unknown Source)

at com.sun.javaws.Main.continueInSecureThread(Unknown Source)

at com.sun.javaws.Main.access$000(Unknown Source)

at com.sun.javaws.Main$1.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)

而且当我导入以前的Java工程文件后,运行程序时出现如下错误:

控制台Console错误提示如下:

Exception in thread "main" java.lang.UnsupportedClassVersionError: com/array/Demo1 has been compiled by a more recent version of the Java Runtime (class file version 54.0), this version of the Java Runtime only recognizes class file versions up to 52.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source)

不过惊喜的是,我新建一个Java工程文件,运行了一个Demo,发现可以运行了。我把两个工程文件对比了一下,发现两个工程JRE System Library不同:

https://www.cnblogs.com/loober/p/9902089.html

Eclipse出错不断,注册表不能乱改的更多相关文章

  1. 用注册表清除Office Word文档杀手病毒

    不久前,笔者打开word文件时遇到了一件离奇的怪事,常用的Word文件怎么也打不开,总是出现提示框:"版本冲突:无法打开高版本的word文档".再仔细查看,文件夹里竟然有两个名字一 ...

  2. 注册表-恶意首页追踪之旅(IE不能改主页)

    恶意首页追踪之旅(先说下,360无法修复这个恶意首页) 话说,今天下了个扫站的工具,结果一不小心中了恶意广告! 中招后不停的乱下东西安装,360不停的在那弹出提示! 无语了,一个个卸载,把C:\win ...

  3. 手动更改WIN远程桌面端口,要改两个地方的注册表哟

    看到我的服务器有老多人在用桌面连接,虽然进不去,但他们不停地试,浪费掉不少服务器资源,我看到网上有不少关于修改3389的介绍.修改3389的工具,一些工具一点用都没有,纯属扯淡.修改后照样是3389. ...

  4. winxp改AHCI不再蓝屏,不用改注册表,所有PC机通用

    要用win8的pe 在通常的情况下,硬盘在BIOS中默认为原生IDE模式以获得最好的兼容性.对配件要求较高的W7,W8系统中,而通过开启硬盘AHCI模式,可以在一定程度上提升硬盘的性能表现.如果在ID ...

  5. 贴一份用delphi修改注册表改网卡MAC地址的代码

    //提示:此代码需要use Registry, Common; function WriteMAC(model:integer):integer; var reg:TRegistry; begin r ...

  6. 使用MSBUILD 构建时出错 error MSB3086: 任务未能使用 SdkToolsPath“”或注册表项“XXX”找到“LC.exe”,请确保已设置 SdkToolsPath。

    如果项目有添加有WB引用,比如引用其它网站的WEB服务等,那么VS在编译时会自动生成个 [项目名称].Serializers.dll的文件,就是把引用服务中的相关对象信息生成硬编码的程序集,以提高效率 ...

  7. 注册表-各种功能-隐藏IE、隐藏硬盘、禁用硬件

    1.在[我的电脑]上隐藏软驱 在[开始]→[运行]→输入[Regedit]→[HKEY_CURRENT_USER]→[Software] →[Microsoft] →[Windows]→[Curren ...

  8. 黑客常用的windows注册表大全

    目录 使系统没有"运行"选项                        1让操作系统无"关闭系统" 选项                    2让操作系统 ...

  9. [转帖]Windows注册表内容详解

    Windows注册表内容详解 来源:http://blog.sina.com.cn/s/blog_4d41e2690100q33v.html 对 windows注册表一知半解 不是很清晰 这里学习一下 ...

随机推荐

  1. Redis学习——Linux环境下Redis的安装(一)

    一.关于Redis Redis最为一款开源的key-value存储系统,自推出到现在一直受到编程人员的喜爱.它支持存储多种value类型,String .List .Set .Zset .Hash.这 ...

  2. 『Two 树的直径求解及其运用』

    树的直径 我们先来认识一下树的直径. 树是连通无环图,树上任意两点之间的路径是唯一的.定义树上任意两点\(u, v\)的距离为\(u\)到\(v\)路径上边权的和.树的直径\(MN\)为树上最长路径, ...

  3. [SQL]SQL 执行顺序

    这个文章主要是防止我忘了 SQL 的执行顺序,解释的东西我都没怎么看懂.数据库渣如我- 逻辑查询处理阶段简介 FROM:对FROM子句中的前两个表执行笛卡尔积(Cartesian product)(交 ...

  4. Python进阶:切片的误区与高级用法

    2018-12-31 更新声明:切片系列文章本是分三篇写成,现已合并成一篇.合并后,修正了一些严重的错误(如自定义序列切片的部分),还对行文结构与章节衔接做了大量改动.原系列的单篇就不删除了,毕竟也是 ...

  5. ES6躬行记(5)——对象字面量的扩展

    一.简洁属性和方法 当创建对象字面量时,如果属性值是与属性同名的已定义的标识符(例如变量.常量等),那么ES6允许省略冒号和属性值,这样就能避免冗余的初始化.下面分别用传统的键值对和最新的简写方式创建 ...

  6. kubernetes进阶之七:Service

    1.概述 Service也是Kubernetes里的最核心的资源对象之一,Kubernetes里的每个Service其实就是我们经常提起的微服务架构中的一个“微服务”,之前我们所说的Pod.RC等资源 ...

  7. 聊天框Demo:DotNetCore+ActiveMQ+Mqttjs 实现前后台消息监听

    网上查了查 ActiveMQ + .net core 的例子很少,自己做一个demo 作为记录,另外FineUI Core基础版要来了,出来后我会用FineUI再做一版,为知识星球的引流... 1.安 ...

  8. Puppet部署Nginx返代示例

    一.创建目录并编辑Nginx安装模块 mkdir -pv /etc/puppet/modules/nginx/{manifests,files,templates,spec,tests,lib} ]# ...

  9. 开源分布式数据库SequoiaDB在去哪儿网的实践

    编者注: 中国的数据库行业也迎来了一波新的热点事件.分布式数据库这块新消息不断,也让大家开始关注中国的分布式数据库.首先是短短一周内,Pingcap和SequoiaDB巨杉数据库陆续宣布了C轮的数千万 ...

  10. ROS笔记3 理解nodes

    http://wiki.ros.org/ROS/Tutorials/UnderstandingNodes 介绍几个命令行工具用法 roscore rosnode rosrun A node reall ...