Java 9积极解决Linux中的GTK GUI难题
创始人
2025-01-27 10:51:22
0次

[[163085]]

浏览器窗口中的甲骨文Java图标显示效果。

将Java与该工具包***版本相结合能够避免应用因多GTK版本冲突而遭遇故障。

目前甲骨文公司正计划立足于Linux系统将GTK 3 GUI工具包纳入Java 9当中。此举将保证当前Java与该工具包的***版本加以结合,从而避免应用因多GTK版本冲突而遭遇故障。

根据openjdk.net网站发布的一项Java增强提案,这项举措的目标在于以默认方式支持GTK(即GIMP工具包)2,并在系统属性指定的情况下方行使用GTK 3。基于JavaFX、Swing或者AWT(即先进容器工具包)的各类Java图形应用程序将被纳入该荐规划,而各现有应用程序亦可在无需针对GTK 2或者3进行修改的前提下运行于Linux之上。

这项提案已经被甲骨文公司Java平台部门***架构师Mark Reinhold发送至openjfx-dev邮件名单中的各位成员。Java 9预计将在2017年3月正式发布。

“目前有大量Java软件包在使用GTK,其中包括AWT/Swing、JavaFX以及SWT。SWT已经迁移至GTK 3,但其中仍然包含一项系统属性,可被用于强制其使用早期版本,”这份提案指出。“而这种在软件包内混用不同GTK版本的作法有可能导致应用程序发生故障。”

这一问题还特别影响到各类采用Eclipse开发平台的应用程序。这份提案同时表示,尽管GTK 2与3目前已经以默认方式可用于多数Linux发行版,但仍有一部分发行版方案尚未将其纳入。

同样受到影响的还有GTK+,这套跨平台工具包作为功能部件及API存在,并通过GNU项目以免费软件发布。其被囊括于多种常见项目当中,从Apache OpenOffice办公软件套件到Inkscape矢量图形编辑器再到PyShare图像上传工具皆涵盖其中。

根据这份Java提案,可资替代GTK 2与3的备选方案在于调整Java图形以确保其只支持GTK 3,这将极大降低对移植与测试的需求。不过这套方案可能带来大量无法通过测试发现的bug,意味着我们需要投入额外精力检查AWT外观与使用感受,且要求对JavaFX/Swing中的一者或者二者进行移植。这类移植工作在执行中往往要求对AWT与Swing做出大量协调。

不过曾供职于Sun Microssytems公司的一位前Java管理人员对由此给Java带来的改进效果提出了质疑。“Linux平台上的基于Java的桌面应用程序其实并不多见,因此我不太确定其面向的市场到底有多大规模,”前Sun公司Java EE团队成员、现任Couchbase公司开发者布道副总裁的Arun Gupta强调称。

原文标题:Java 9 to address GTK GUI pains on Linux

【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】

相关内容

热门资讯

PHP新手之PHP入门 PHP是一种易于学习和使用的服务器端脚本语言。只需要很少的编程知识你就能使用PHP建立一个真正交互的...
网络中立的未来 网络中立性是什... 《牛津词典》中对“网络中立”的解释是“电信运营商应秉持的一种原则,即不考虑来源地提供所有内容和应用的...
各种千兆交换机的数据接口类型详... 千兆交换机有很多值得学习的地方,这里我们主要介绍各种千兆交换机的数据接口类型,作为局域网的主要连接设...
粉嫩如何诠释霸道 东芝M805... “霸道粉”是个什么玩意东芝M805拿过来的时候,笔者扑哧笑了,不是笑这款笔记本,而是笑这款产品的颜色...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
什么是大数据安全 什么是大数据... 在《为什么需要大数据安全分析》一文中,我们已经阐述了一个重要观点,即:安全要素信息呈现出大数据的特征...
只需三步,让你掌握阿尔法路由器... 请参照以下阿尔法路由器设置方法,通过浏览器进入及设置宽带路由器。经过这三个步骤的设置,基本上能够熟悉...
如何更省钱? 近期特价热门硒鼓... 如今激光打印设备已经成为商务或企业的绝对主力办公设备,但采购者往往忽视了激光打印设备所用的耗材,相对...
全面诠释网络负载均衡 负载均衡的出现大大缓解了服务器的压力,更是有效的利用了资源,提高了效率。那么我们现在来说一下网络负载...
如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...