尽管这个问题有点老,但问题是由于
损坏的ClearType注册表设置引起的,并通过修复来解决,具体方法在
ClearType、install4j和Java漏洞案例帖子中有描述。
ClearType、install4j和Java错误案例
你知道ClearType(Windows中的字体平滑技术)和Java(编程语言和推荐框架之一)有什么共同点吗?
除了它们在几个月内一起努力让我感到痛苦之外,没有任何共同点。我有一些Java软件无法安装。我的意思是真的不能安装——甚至找不出原因或在另一台PC上重现。
最近,我被批准使用Woopra beta(站点分析服务),它使用用Java编写的桌面客户端……但我无法安装。这让我真的很生气。 :)
故事中所有相关软件都类似:
基于install4j设置;安装崩溃并显示一堆错误。在解决问题的早期阶段,我一直责怪install4j。后来,我慢慢明白,如果它那么有缺陷那么长时间——解决方案应该已经被创建和谷歌搜索过了。
跟踪:从install4j转移注意力后,我决定推动Java框架。我之前尝试过稳定版本,所以决定选择非稳定1.6 Update 10 Release Candidate。
这实际上修复了错误消息,但并没有修复崩溃。我还注意到在设置文件目录中创建了新的错误日志。以前我只在Windows临时目录中看到过日志。
新的错误日志是这样说的:
无法显示GUI。此应用程序需要访问X Server。如果您有访问权限,则可能缺少X库。******************************************************************* 您还可以通过传递参数-c在没有访问X服务器的情况下以控制台模式运行此应用程序。在非Linux PC上寻找X-Server非常奇怪,不是吗?所以我决定尝试那个“-c”参数。并且实际上能够以控制台模式安装。
结局如何?不,现在安装的应用程序崩溃了。但这真的让我思考。如果控制台可以工作而图形界面则不能——后者必须有问题。
现在应用程序文件夹中的另一个错误日志(除其他事项外)是:
由于:java.lang.IllegalArgumentException:-60397977与特定于文本的LCD对比度密钥不兼容 成功谷歌了我Java无法读取非标准ClearType注册表设置的错误描述。
解决方案:我立即从控制面板启动了ClearType Tuner,并发现设置显示为乱码数字。将其更正为正确的数字后,所有与Java相关的问题都立即消失了。
教训:不要轻易将软件问题归咎于单个应用程序。即使是微小的和完全不相关的设置也可能引发致命的连锁反应。
链接:Java Runtime Environment
http://www.java.com/en/download/index.jsp
ClearType Tuner
http://www.microsoft.com/windowsxp/downloads/powertoys/xppowertoys.mspx
Woopra
http://www.woopra.com/
install4j
http://www.ej-technologies.com/products/install4j/overview.html