柳州企业网站开发平台推广营销企业

news/2025/10/6 6:11:30/文章来源:
柳州企业网站开发平台,推广营销企业,扁平化 wordpress 主题,中国建筑官网首页前言 JDK 升级对于 Java 应用来说是不得不面对的事情#xff0c;一方面 Java 生态系统希望 Java 应用能跟上最新 JDK 版本#xff1a; Oracle 建议将 JDK 的 LTS 版本的发布周期从 3 年调整为 2 年,对于只使用 LTS 版本的应用来说,可以在更短时间内使用最新的技术#xff… 前言 JDK 升级对于 Java 应用来说是不得不面对的事情一方面 Java 生态系统希望 Java 应用能跟上最新 JDK 版本 Oracle 建议将 JDK 的 LTS 版本的发布周期从 3 年调整为 2 年,对于只使用 LTS 版本的应用来说,可以在更短时间内使用最新的技术但这也意味着版本升级会更加频繁。Spring Framework 6 只支持 JDK 17。Spring 是大多数企业级应用依赖的基础框架意味着不得不升级到 JDK 17。 但是另一方面现实中的 Java 应用的 JDK 升级较为缓慢。JDK 11 从 2018 年发布近 4 年已升级 JDK 11 仍未达到半数2022-state-of-java-ecosystem。而相比之下JDK 8 发布之后 1 年内可达到 38%两年达到 64.3%到 2018 年时近 80%(java-8-adoption-march-2016、jvm-ecosystem-report-2018)。 那为什么升级 JDK 11 积极性不高呢 可能的原因是多方面的。例如 JDK 8 在语言层面引入了 Lambda 对开发人员非常有吸引力而 JDK 11 在语言层面的更新显得可有可无。但是有一点是非常明显的相比从其它版本升级到 JDK 8JDK 6/7 升级到 JDK 8 对于应用基本无感升级到 JDK 11/17 难度会大很多可能会遇到很多兼容性问题如 1、删除了一些 API 如 sun.misc.*导致代码出现 ClassNotFoundException。 2、Java Version 的 Schema 发生变化导致原来判断 Java 版本的逻辑出现异常。 3、用户代码中使用了私有的 API使用了标记为废弃的 API 等。 4、JPMSJava Platform Module System的引入导致一些反射代码会无法工作。 5、删除了 J2EE 相关的包。 如果需要升级的应用依赖了成百上千的二方和三方 jar而这些 jar 可能也存在兼容性问题更进一步如果需要升级的应用几十个甚至几百个那么带来的额外工作量可想而知。 正是由于上述的困难阿里巴巴内部将这些升级的经验通过工具沉淀下来希望能够通过工具帮忙更多的 Java 应用更高效的升级最新版本 JDK。 EMT4J 简介 目前 Eclipse Migration Toolkit for Java简称“EMT4J”已经在 Eclipse 社区开源并通过了 Eclipse Adoptium PMC 评审作为 Eclipse Adoptium 子项目进行孵化。阿里云也是 Eclipse Adoptium 工作组的战略基石成员参与 Eclipse Adoptium 社区治理为 Java Ecosystem 提供完全兼容的、基于 OpenJDK 的高质量 JDK 发行版。 EMT4J 目前支持了从 JDK 8 升级到 JDK 1117 的分析后续也会不断的更新对于最新的 LTS 版本的支持。 目前支持通过如下 3 种方式使用 Java Agent命令行工具Maven插件 EMT4J 架构图如下 EMT4J——工具使用场景演示 以一个常见的场景来说明工具的使用 开发人员张三接到任务需要将所在团队负责的 8 个 Java 应用(app-service-1 到app-service-8)从 JDK 8 升级到 JDK 17那张三在 EMT4J 的帮助下如何升级呢 具体升级操作我们分以下七步走 1、张三下载了 EMT4J 工具到本地并且在 /home/jdk17 本地安装了目标版本的 JDK 17。 2、将 app-service-1~app-service-8 的应用包下载到 EMT4J 所在机器放在目录 /home/app/deploy并将 app-service-1~app-service-8 的 JVM 选项放入到 .cfg 的文本文件放在目录 /home/app/vmoptions。 3、运行工具检查sh ${EMT4J_HOME}/bin/analysis.sh -f 8 -t 17 -j /home/jdk17 /home/app其中 -f 8 -t 17 表示从 8 升级到 17 -j /home/jdk17 表示目标版本 JDK 的安装目录/home/app 表示需要检查的应用包以及参数文件。命令执行完成以后默认会在当前目录生成 report.html。打开检查报告report.html 查看到问题的列表如下 4、张三点击The schema of java version changed in JDK9查看问题的详情看到提示如下具体的类Location: file:/home/app/deploy/app-service-1/notify-utils-2.2.5.jar, Target: com.app.services1.utils.VersionInfo。 5、张三打开 app-service-1 的工程看到如下的代码下面的代码显然是无法处理类似于 17.0.1 版本号。 private final String JAVA_VERSION System.getProperty(java.version); private final int getJavaVersionAsInt() {if (this.JAVA_VERSION null)return 0; String str this.JAVA_VERSION.substring(0, 1);str str this.JAVA_VERSION.substring(2, 3);if (this.JAVA_VERSION.length() 5) {str str this.JAVA_VERSION.substring(4, 5);} else {str str 0;} return Integer.parseInt(str); } 6、张三参考报告中的 How to fix 了解到 JDK 9 以后 Java Version 的 Schema 发生了变化按新的 Schema 修改代码。 7、张三按依次参考报告中对其它问题修改。修改完成以后在开发机器上使用目标版本 JDK 启动验证功能正确性。 EMT4J——工具特性一览 以上使用 EMT4J 工具帮助张三从 JDK 8 成功地升级到 JDK 17那么 EMT4J 工具具有哪些特性 1、支持 Java Agent、命令行工具以及 Maven 插件等方式使用 Java Agent 可以获取更多运行时上下文信息能提供准确调用栈能发现更多的问题命令行工具方便使用无须启动应用但是可能会存在误报Maven 插件可以集成在构建阶段可在开发阶段发现问题 2、支持多种潜在不兼容性问题分析 JDK 8 到 JDK 11 JDK Internal API 的使用System ClassLoader 不再是 URLClassLoader 子类Arrays.asList 返回类型变化Java Version 的 Shema 发生变更JPMS 需要增加 add-exports 和 add-opens时区数据变更为 CLDR 引起相关不兼容Pattern.compile 的 API 变更JVM 选项变更...JDK 11 到 JDK 17 删除了 Nashorn删除了RMI 和 Java Applet部分 Class 无法反射获取 Field... 3、支持 HTML、TXT 和 JSON 格式的输出 如何参与贡献 如果您在使用 EMT4J 的过程中遇到如下的问题 工具应该发现的兼容性问题但是实际没有发现工具报告的问题上下文不准确不方便查找问题在哪里工具报告的问题描述不清晰难以指导如何修改增加一些新的功能比如工具支持其它一些格式... 都可以通过如下的方式参与贡献 创建 issue 描述您遇到的问题自己 Fork 以后修改测试后并通过 PR 合入 master 结语因为目前还有很多的 Java 应用仍然停留在 JDK 8上所以这些应用正在规划或者正在升级 JDK 中希望通过 EMT4J 让我们的升级工作更轻松一些。 我们在工具中沉淀了阿里巴巴升级 JDK 的经验但是肯定还有很多我们没有遇到的兼容性问题另外 JDK 新的版本不断会发布也会不断有新的兼容性问题出来。我们希望通过开源的方式能够有更多的开发者参与到工具中给工具不断增强功能,让更多的 Java 应用升级变得更简单。更多内容 (如何使用、贡献等) 可以参考https://github.com/adoptium/emt4j 原文链接 本文为阿里云原创内容未经允许不得转载。

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

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

相关文章

新手搭建做网站做图兼职网站有哪些

系列文章 一、逆向工程 Sketchup 逆向工程(一)破解.skp文件数据结构 Sketchup 逆向工程(二)分析三维模型数据结构 Sketchup 逆向工程(三)软件逆向工程从何处入手 Sketchup 逆向工程(四&#xf…

营销型网站方案书从事网站开发学什么专业

近几年随着互联网科技的不断创新,扭蛋机又再一次进入到了大众的目光中,各种全新的“互联网扭蛋机”模式为大众打造了一个全新的扭蛋体验,市场规模也在不断扩大,为扭蛋机商家和创业者提供了巨大的发展空间。本文将介绍“互联网扭蛋…

哪个网站做马代路线好外贸拓客软件

什么是九宫飞星?如何看九宫飞星?如果您能配合老黄历的每日忌宜、时辰忌宜、时辰吉凶、五行旺衰、今日卦象、三煞七煞等资料综合应用,那么您就可以随时随地趋吉避凶、心想事成了。九星即为一白、二黑、三碧、四绿、五黄、六白、七赤、八白及九…

在AI技术快速实现创意的时代,挖掘游戏开发框架新需求成为关键

本文分析了一款基于JavaScript的经典游戏主机开发环境,详细介绍了其核心功能、应用场景和使用方法,并基于用户反馈总结了潜在的功能改进需求,为开发者提供参考。内容描述核心功能定位:该项目是一个专为经典游戏主机…

iNaturalist开放自然数据与计算机视觉挑战

iNaturalist平台通过结合社区观察与机器学习技术,构建了包含数百万张自然物种图像的数据集。该文探讨了计算机视觉在细粒度物种识别中的技术挑战,包括数据清洗、长尾分布处理及自监督学习应用,并介绍了基于AWS开放数…

公司网站建设的基本流程wordpress做文字站

ref 被用来给DOM元素或子组件注册引用信息。引用信息会根据父组件的 $refs 对象进行注册。如果在普通的DOM元素上使用,引用信息就是元素; 如果用在子组件上,引用信息就是组件实例 注意:只要想要在Vue中直接操作DOM元素,就必须用r…

建网站做商城个体户资质可以电子商务网站建设与管理期末答案

一、什么是幂等性 幂等是一个数学与计算机学概念,在数学中某一元运算为幂等时,其作用在任一元素两次后会和其作用一次的结果相同。 在计算机中编程中,一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同。幂等函数或幂等…

丹阳网站建设要多少钱广告网站推荐

从零开始的目标检测和关键点检测(三):训练一个Glue的RTMPose模型 一、重写config文件二、开始训练三、ncnn部署 从零开始的目标检测和关键点检测(一):用labelme标注数据集 从零开始的目标检测和关键点检测…

网站建设用哪种语言最好免费博客网站

近年来,随着企业对云服务的依赖不断增加,SD-WAN技术成为提升连接性能的热门选择。SD-WAN通过简化云集成和连接,以及提升应用程序性能,为企业带来显著的业务优势。这种云连接的改进使企业能够更轻松地接触全球劳动力和潜在客户。 首…

户外旅游网站模板wordpress主题 小工具

题目描述: 给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a ,b ,c ,使得 a b c 0 ?请找出所有和为 0 且 不重复 的三元组。 示例 1: 输入:nums [-1,0,1,2,-…

公司注册网站官网中国国家培训网

Qt 不是凭空产生的,它是基于现有工具链打造而成的,它所使用的编译器、链接器、调试器等都不是自己的,Qt 官方只是开发了上层工具。下面我们分几个部分讲解 Qt 使用到的工具链。 GNU 工具集 在上个世纪八十年代,计算机都是奢侈品…

门户网站建设管理工作网站代运营服务公司

在 Python 中,类属性和实例属性是两种不同类型的属性,它们在用途和作用域上有所不同。下面是关于它们的区别的详细解释: 定义位置: 类属性:定义在类的主体中,但在任何类方法之外。实例属性:通常…

网站建设公司营业执照图片国内卖到国外的电商平台

今天研究一下LRU算法,上学期学数据结构的时候就应该学一下这个算法,不过后面操作系统也会讲到LRU算法 题目 LRU缓存leetocde146 LRU(Least Recently Used,最近最少使用)算法是一种常见的缓存替换算法,通…

深圳网站设计服有哪些网站设计比较好的公司

目录 1.grep 2.sed 3.awk 1.grep grep 擅长过滤查找,按行进行过滤 例: 当有用户对我们的主机进行爆破攻击时,我们可以使用grep将 ip 查找出来,进行封锁等处理 在 /var/log 目录下的 secure 文件中存放在用户登录连接信息&am…

政务网站队伍建设情况开发区邮编

1. 功能说明 本文示例将实现R023样机小型双轮差速底盘跟随人移动的功能。在小型双轮差速底盘前方按下图所示安装3个 近红外传感器,制作一个红外线发射源,实现当红外发射源在机器人的检测范围内任意放置或移动时,机器人能追踪该发射源。 2. 电…

营销型网站的运营配套不包括免费发布网站

预约小程序,让生活更便捷——轻松掌握未来,一键预约新体验 在快节奏的现代生活中,我们总是在不断地奔波,为了工作、为了生活,不停地忙碌着。然而,在这繁忙的生活中,我们是否曾想过如何更加高效…

网站开发不让搜索引擎网站建设公司 校园网站

明天又要去参加一次面试。每次面试的时候,面试官都会在最后给面试者一些时间,来问问题。这是个非常好的机会,能按照自己的思路,来了解职位、技术、企业文化、福利待遇、企业状况和前景等情况,以弥补前面面试过程中没有…

北京市住房与城乡建设网站百度收录WordPress文章

一个Flutter&Cocoapods项目打包问题集锦 问题1 github加速问题 cocoapods项目需要访问https://github.com/CocoaPods/Specs.git,众所周知,github经常被墙,导致经常需要借助加速来下载和访问,这里可以使用油猴脚本或者Fastgi…

自己做网站的服务器深圳哪家做网站比较好

目录前言:1、MapReduce原理2、mapreduce实践(WordCount实例) 目录 今天先总体说下MapReduce的相关知识,后续将会详细说明对应的shuffle、mr与yarn的联系、以及mr的join操作的等知识。以下内容全是个人学习后的见解,如…

网络营销的建议方案seo综合查询使用vsping工具

喜欢就关注我们吧!在当下的市场环境中,除了掌握困扰软件的最常见安全问题外,开发人员还应该了解到底是什么问题在影响他们正在使用的编程语言。静态代码分析安全公司 Veracode 最近发布了一份年度软件安全状态(SOSS)报…