关于Jakarta EE软件包名称更改的思考

Eclipse Foundation 宣布 Jakarta EE无法继续使用javax软件包名称。 显然,这是因为Java EE基于此名称,但不允许对该名称或以该名称开头的类或包进行进一步的修改。

尽管这当然是个坏消息,但对我来说,当宣布Jakarta EE不能将javax名称用于新的规范和子包时,这个坏消息已经开始。 那已经意味着继续发展一个随着时间的推移变得越来越不一致的平台。

考虑到我们所处的情况,我认为jakarta并迁移到建议的jakarta名称是有意义的。

这无疑对整个Java生态系统产生了巨大影响,这一切都基于任何Enterprise API,而不仅仅是标准本身。 如何合理解决?

我认为最重要的目标是最大程度地减少对用户(即开发人员)的影响。 除了项目中的代码用法之外,我还看到有两个主要更改。

任何知道并处理EE API的运行时,例如应用程序服务器,都必须适应并切换到新名称。 他们必须实现一些功能才能与javaxjakarta ,这很可能同时发生,这仅仅是因为必须这样做。 那里有太多的代码无法迁移到基于javaxjakarta方式。 在现实世界中,有遗留项目,大量的库和依赖项,没有源的二进制文件等等。 我们需要一种方法来告诉运行时至少在临时运行时或在特定的兼容性配置文件中同时运行。 已经有一些建议如何做到这一点,包括字节码操作和其他黑魔法:-)我已经与IBM工程师交谈过,这也是Liberty的发展方向。 对我来说,让开发人员的生活更轻松是最重要的。

第二个重大影响将是围绕Enterprise Java构建的框架,库和工具,这些框架,库和工具将Java EE中包含的javax导入某些内容。 至少一旦引入了一些新功能,就必须进行切换。 如果他们想确保即使没有“兼容性运行时”,他们的项目仍可以在Jakarta EE下运行,他们也必须进行切换。 我认为,在使用javax java EE和使用jakarta Jakarta EE的情况下,提供当前的Java EE API是一个jakarta 。 平台( javaee-api )和单独的规范(例如JAX-RS)都将需要此javaee-api 。 然后,这些项目可以通过其解析的依赖项来轻松控制,以使用并可以相应地交换其导入。 例如,如果Jakarta EE做到了干净利落,仅在下一个发行版(例如98.1切换到jakarta命名空间,而其他方面与Java EE 8相似,这将使项目切换更加容易。

TL; DR

我认为,雅加达EE生态系统应:

  • 最小化对用户(即开发人员)的影响
  • 使运行时至少暂时或在兼容性配置文件中同时支持javaxjakarta
  • 无需切换任何其他功能,即可轻松切换Jakarta EE平台和各个标准中的软件包名称

发现帖子有用吗? 订阅我的时事通讯,获取有关IT和Java的更多免费内容,技巧和窍门:

成功! 现在检查您的电子邮件以确认您的订阅。

翻译自: https://www.javacodegeeks.com/2019/05/thoughts-jakarta-ee-package-name-change.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/339482.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++简介源码讲解精辟版,C++入门级C++学习,C++与C的区别值得知晓

C简介源码讲解精辟版,C入门级C学习,C与C的区别值得知晓C语言和C基础区别C标准输入和输出命名空1.命名空间的定义 :namespace 标识符{ } 例:namespace my{int a1;}命名空间中的成员访问:作用域分辨符:: 例&a…

jbpm 和 drools_Drools和jBPM KIE A​​pps平台

jbpm 和 drools随着Drools和jBPM(KIE)6系列出现了一个新的工作台,并有望最终实现用户的可扩展性。 我终于有了一些预告片,以显示此工作原理以及所存储的内容。 确保选择1080p并全屏显示它们的最佳状态。 (点击放大&am…

Spring ClassPathXmlApplicationContext

介绍: Spring提供了两种类型的容器: BeanFactory :它支持bean实例化和连接 ApplicationContext :它扩展了BeanFactory ,因此提供了所有这些功能,就像BeanFactory一样。 此外,它提供BeanPostPr…

mysql 1308_Mysql恢复数据报ERROR 1308 : LEAVE with no matching label_MySQL

赶紧看备份日志,日志如下:----------------------------------BEG:20151108 01:00:01FTP:20151108 01:00:05CLS:20151108 01:00:07OPT:20151108 01:00:08END:20151108 01:00:08----------------------------------日志并没有什么异常,既然说有…

真正的C与C++编程高手是什么?臭美的群体!如何编写高质量代码?

前 言软件质量是被大多数程序员挂在嘴上而不是放在心上的东西!除了完全外行和真正的编程高手外,初读本书,你最先的感受将是惊慌:“哇!我以前捏造的C/C程序怎么会有那么多的毛病?”别难过,作者只…

纪事本 乱码_纪事地图和Yahoo Cloud服务基准

纪事本 乱码总览 Yahoo Cloud Service Benchmark是一种相当广泛使用的基准测试工具,用于测试大量密钥(例如1亿个)和少量客户端(即由一台计算机提供服务)的密钥值存储。 在本文中,我将研究如何使用Chronicl…

windows10安装mysql 8.0_手把手教你在Windows 10安装MySQL 8.0(详细图文)

出品丨TeacherWhat题图:Oracle MySQL 8.0关键字:新版本、Install、安装、MySQL、数据库入门、Database正文约1000字,建议阅读时间2分钟目录结构:1. 官网下载安装包2. 点击下载的程序包安装3. 安装数据库软件4. 安装成功后&#xf…

Java:可选的可选实现

类java.util.Optional被实现为单个不可变的具体类,该类在内部处理两种情况。 一个有元素,一个没有元素。 让Optional作为一个接口并让两个不同的实现代替实现是一个更好的选择吗? 毕竟,这就是我们通常被教导要使用的一种面向对象的…

mysql降低数据库版本_三步10分钟搞定数据库版本的降迁 (将后台数据库SQL2008R2降为SQ...

三步10分钟搞定数据库版本的降迁 (将SQL2008R2降为SQL2005版本) 前思后想仍觉得实战数据库版本的降迁一文中的方式不仅老土而且低效,故有了下文三步搞定数据库从MSSQL2008R2 高版本降迁至SQL2005低版本。 整个过程如果思路清晰,数据量小,不过…

2017菜鸡C与C++工程师总结,撸码撸码,垃圾专科生撸码人生

前言年底了,对工作做一个总结。又要感叹那句话啊,时光流水,仿佛昨天才刚毕业,到今天不知不觉已经正式工作半年了。文章以po主自己的心理想法和所见所闻入手来写,垃圾专科生,文笔不好勿怪。开始正文吧。关于…

primefaces_PrimeFaces 5.0 DataTable列切换器

primefaces我有机会与PrimeFaces 5.0 DataTable一起工作,并且增强功能很棒。 今天,我只想展示其中的一项新功能……DataTable列切换器。 通过此功能,可以通过复选框列表选择显示哪些列。 要使用列切换器,只需添加一个commandButt…

opencv 编译 python导入_openCV3 Python编译指南

这里主要对openCV官网的《Installation in Linux》文档进行了翻译和解释原文见:https://docs.opencv.org/3.4.1/doc/tutorials/introduction/linux_install/linux_install.html#linux-installationRequired Packages(需求包)GCC 4.4.x or laterCMake 2.6 or higherG…

Docker化Spring Boot应用程序

你好朋友, 在本教程中,我们将看到如何对Spring Boot应用程序进行Docker化。通过dockerizing意味着我们将以Docker容器的形式运行应用程序。 以下是涉及的步骤: 1.创建一个Spring Boot应用程序 2.在您的机器上安装Docker 3.在您的项目中创…

telephone 为空 唯一索引_PostgreSQL的空串、空值对唯一性约束的影响

一、现象及原因今天在PostgreSQL又遇到一个现象,应用代码报错:“ERROR: duplicate key value violates unique constraint ...”。最后查明,这是由于PostgreSQL把空串()、空值(NULL)当作不同的值,从而影响了那些没有申明为NOT NUL…

抱歉咯!今天偷个懒!!

今天偷个懒向大家推荐一个新建的C/C学习交流群。应为新建群人数不是很多,正在学习C/C或者正在寻求进阶的小伙伴都可以加下。作为群主会不时在群内分享学习资料的。

openshift_在WildFly和OpenShift上的WebSocket聊天

openshift聊天是解释WebSocket的最典型示例之一。 它是一个相当常用的界面,可以很容易地解释WebSocket的基本概念。 当然,Java EE 7 WebSocket也有一个, 在这里可用 ! 您可以使用以下步骤在WildFly上轻松运行它: curl…

linux 下脚本安装 mysql_linux(centos7)下编译安装mysql(数据库)一键安装详解+脚本文件...

一、下载源文件官网下载地址: https://downloads.mysql.com/archives/community/二、安装前准备(1)、开始之前先把虚拟机内存调大,避免安装时间过长和卡慢此处我调的内存为8个G(我的Windows内存为12G),如果你的电脑没有这么大运行内存可适度调小&#xf…

mysql数据库改成支持中文_修改Mysql编码支持中文

MySQL的默认编码是Latin1,不支持中文,要支持中午需要把数据库的默认编码修改为gbk或者utf8。1、需要以root用户身份登陆才可以查看数据库编码方式(以root用户身份登陆的命令为:>mysql -u root –p,之后两次输入root用户的密码)&#xff0c…

为什么学习C语言这么久,看的懂代码,做不出题,写不出来项目?

前言我看得懂别人的程序,可是我自己却写不出来,我应该怎么办啊?你了解这些嘛?你只是能从别人书写的代码知道每一步都做些什么吧?你明白别人的解题思路吗?你知道别人为什么要用那样的算法吗?如果…

如何在AWS中启动EC2实例

你好朋友, 在本教程中,我们将看到如何立即在AWS中旋转EC2实例。 您应该可以访问AWS控制台。如果您还没有AWS账户,则可以单击此处并在AWS上创建免费套餐。 如何在AWS中启动EC2实例 步骤1 : 使用您的凭证登录到您的AWS账户。 第…